docker image rm
| Descripción | Elimina una o más imágenes |
|---|---|
| Uso | docker image rm [OPTIONS] IMAGE [IMAGE...] |
| Alias | docker image remove
docker rmi |
Descripción
Elimina (y quita la etiqueta de) una o más imágenes del nodo host. Si una imagen tiene múltiples etiquetas, usar este comando con la etiqueta como parámetro solo elimina la etiqueta. Si la etiqueta es la única que tiene la imagen, se eliminan tanto la imagen como la etiqueta.
Esto no elimina las imágenes de un registro. No puedes eliminar una imagen de un
contenedor en ejecución a menos que uses la opción -f. Para ver todas las imágenes en un host,
usa el comando
docker image ls.
Opciones
| Opción | Predeterminado | Descripción |
|---|---|---|
-f, --force | Fuerza la eliminación de la imagen | |
--no-prune | No elimina los padres sin etiqueta | |
--platform | API 1.50+
Elimina solo la variante de plataforma indicada. Formateado como os[/arch[/variant]] (p. ej., linux/amd64) |
Ejemplos
Puedes eliminar una imagen usando su ID corto o largo, su etiqueta o su digest. Si una imagen tiene una o más etiquetas que la referencian, debes eliminarlas todas antes de que la imagen sea eliminada. Las referencias de digest se eliminan automáticamente cuando una imagen se elimina por etiqueta.
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
test1 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
test2 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
$ docker rmi fd484f19954f
Error: Conflict, cannot delete image fd484f19954f because it is tagged in multiple repositories, use -f to force
2013/12/11 05:47:16 Error: failed to remove one or more images
$ docker rmi test1:latest
Untagged: test1:latest
$ docker rmi test2:latest
Untagged: test2:latest
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
$ docker rmi test:latest
Untagged: test:latest
Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8
Si usas la opción -f y especificas el ID corto o largo de la imagen, este
comando quita las etiquetas y elimina todas las imágenes que coinciden con el ID especificado.
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
test1 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
test2 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
$ docker rmi -f fd484f19954f
Untagged: test1:latest
Untagged: test:latest
Untagged: test2:latest
Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8
Una imagen descargada por digest no tiene ninguna etiqueta asociada:
$ docker images --digests
REPOSITORY TAG DIGEST IMAGE ID CREATED SIZE
localhost:5000/test/busybox <none> sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf 4986bf8c1536 9 weeks ago 2.43 MB
Para eliminar una imagen usando su digest:
$ docker rmi localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
Untagged: localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
Deleted: 4986bf8c15363d1c5d15512d5266f8777bfba4974ac56e3270e7760f6f0a8125
Deleted: ea13149945cb6b1e746bf28032f02e9b5a793523481a0a18645fc77ad53c4ea2
Deleted: df7546f9f060a2268024c8a230d8639878585defcc1bc6f79d2728a13957871b
Eliminar plataformas específicas (--platform)
La opción --platform te permite especificar qué variantes de plataforma de la
imagen eliminar. Por defecto, docker image remove elimina todas las variantes de plataforma
que estén presentes. Usa la opción --platform para indicar la variante de plataforma
específica que deseas eliminar de la imagen.
Eliminar una plataforma específica remueve la imagen de todas las imágenes que referencian
al mismo contenido, y requiere que se use la opción --force. Omitir la
opción --force produce una advertencia y la eliminación se cancela:
$ docker image rm --platform=linux/amd64 alpine
Error response from daemon: Content will be removed from all images referencing this variant. Use —-force to force delete.
La opción de plataforma toma el formato os[/arch[/variant]]; por ejemplo,
linux/amd64 o linux/arm64/v8. La arquitectura y la variante son opcionales
y, si se omiten, toman por defecto la arquitectura nativa del demonio.
Puedes pasar múltiples plataformas ya sea pasando la opción --platform
varias veces, o pasando una lista de plataformas separadas por comas.
Los siguientes usos de esta opción son equivalentes:
$ docker image rm --platform linux/amd64 --platform linux/ppc64le myimage
$ docker image rm --platform linux/amd64,linux/ppc64le myimage
El siguiente ejemplo elimina las variantes linux/amd64 y linux/ppc64le
de una imagen alpine que contiene múltiples variantes de plataforma en la caché de
imágenes:
$ docker image ls --tree
IMAGE ID DISK USAGE CONTENT SIZE EXTRA
alpine:latest a8560b36e8b8 37.8MB 11.2MB U
├─ linux/amd64 1c4eef651f65 12.1MB 3.64MB U
├─ linux/arm/v6 903bfe2ae994 0B 0B
├─ linux/arm/v7 9c2d245b3c01 0B 0B
├─ linux/arm64/v8 757d680068d7 12.8MB 3.99MB
├─ linux/386 2436f2b3b7d2 0B 0B
├─ linux/ppc64le 9ed53fd3b831 12.8MB 3.58MB
├─ linux/riscv64 1de5eb4a9a67 0B 0B
└─ linux/s390x fe0dcdd1f783 0B 0B
$ docker image --platform=linux/amd64,linux/ppc64le --force alpine
Deleted: sha256:1c4eef651f65e2f7daee7ee785882ac164b02b78fb74503052a26dc061c90474
Deleted: sha256:9ed53fd3b83120f78b33685d930ce9bf5aa481f6e2d165c42cbbddbeaa196f6f
Después de que el comando se completa, las variantes indicadas de la imagen alpine se eliminan
de la caché de imágenes:
$ docker image ls --tree
IMAGE ID DISK USAGE CONTENT SIZE EXTRA
alpine:latest a8560b36e8b8 12.8MB 3.99MB
├─ linux/amd64 1c4eef651f65 0B 0B
├─ linux/arm/v6 903bfe2ae994 0B 0B
├─ linux/arm/v7 9c2d245b3c01 0B 0B
├─ linux/arm64/v8 757d680068d7 12.8MB 3.99MB
├─ linux/386 2436f2b3b7d2 0B 0B
├─ linux/ppc64le 9ed53fd3b831 0B 0B
├─ linux/riscv64 1de5eb4a9a67 0B 0B
└─ linux/s390x fe0dcdd1f783 0B 0B