Docker命令行参考(12) – docker rmi删除镜像

  1. Usage:  docker rmi [OPTIONS] IMAGE [IMAGE...]
  2.  
  3. Remove one or more images
  4.  
  5. Options:
  6.   -f, --force      Force removal of the image
  7.       --help       Print usage
  8.       --no-prune   Do not delete untagged parents

可以使用镜像的短和长ID,它的digest来删除它。如果一个镜像有一个或多个tag引用它,在删除这个镜像之前必须先删除它们。当通过tag删除镜像时,它的digest的引用会自动删除。

  1. $ docker images
  2. REPOSITORY                TAG                 IMAGE ID            CREATED             SIZE
  3. test1                     latest              fd484f19954f        23 seconds ago      7 B (virtual 4.964 MB)
  4. test                      latest              fd484f19954f        23 seconds ago      7 B (virtual 4.964 MB)
  5. test2                     latest              fd484f19954f        23 seconds ago      7 B (virtual 4.964 MB)
  6.  
  7. $ docker rmi fd484f19954f
  8. Error: Conflict, cannot delete image fd484f19954f because it is tagged in multiple repositories, use -f to force
  9. 2013/12/11 05:47:16 Error: failed to remove one or more images
  10.  
  11. $ docker rmi test1
  12. Untagged: test1:latest
  13. $ docker rmi test2
  14. Untagged: test2:latest
  15.  
  16. $ docker images
  17. REPOSITORY                TAG                 IMAGE ID            CREATED             SIZE
  18. test                      latest              fd484f19954f        23 seconds ago      7 B (virtual 4.964 MB)
  19. $ docker rmi test
  20. Untagged: test:latest
  21. Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8

如果使用-f参数和指定镜像的短或长ID,那么这个命令将untag和删除所有匹配指定ID的镜像。

  1. $ docker images
  2. REPOSITORY                TAG                 IMAGE ID            CREATED             SIZE
  3. test1                     latest              fd484f19954f        23 seconds ago      7 B (virtual 4.964 MB)
  4. test                      latest              fd484f19954f        23 seconds ago      7 B (virtual 4.964 MB)
  5. test2                     latest              fd484f19954f        23 seconds ago      7 B (virtual 4.964 MB)
  6.  
  7. $ docker rmi -f fd484f19954f
  8. Untagged: test1:latest
  9. Untagged: test:latest
  10. Untagged: test2:latest
  11. Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8

通过digest拉取的镜像没有与之关联的tag:

  1. $ docker images --digests
  2. REPOSITORY                     TAG       DIGEST                                                                    IMAGE ID        CREATED         SIZE
  3. localhost:5000/test/busybox    <none>    sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf   4986bf8c1536    9 weeks ago     2.43 MB

通过它的digest删除一个镜像:

  1. $ docker rmi localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
  2. Untagged: localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
  3. Deleted: 4986bf8c15363d1c5d15512d5266f8777bfba4974ac56e3270e7760f6f0a8125
  4. Deleted: ea13149945cb6b1e746bf28032f02e9b5a793523481a0a18645fc77ad53c4ea2
  5. Deleted: df7546f9f060a2268024c8a230d8639878585defcc1bc6f79d2728a13957871b
标签:Docker 发布于:2019-11-19 13:46:53