如何删除顽固的 docker 镜像?

如何删除顽固的 docker 镜像?

我试图按如下方式删除 Docker 映像,但不知道如何执行此操作。

docker 镜像列表

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
<none>              <none>              04251cf7a8b9        About a minute ago   356.1 MB
pg-image            latest              1060b3e656b6        5 minutes ago        323.9 MB
redis-image         latest              8df469463da3        14 minutes ago       137.7 MB
ubuntu              12.04               822a01ae9a15        2 weeks ago          108.1 MB

我想删除的 Docker 镜像:

$ docker rmi 042
Error response from daemon: Conflict, cannot delete 04251cf7a8b9 because 
the container 4ac3a09ab4d3 is using it, use -f to force
2014/08/27 15:16:15 Error: failed to remove one or more images

当我尝试使用它来删除它时,-f它没有成功。如何正确删除该图像,为什么不能使用删除它docker rmi -f 042

答案1

这里的问题是有一个容器 4ac3a09ab4d3 仍在使用该映像。

$ docker ps -a
CONTAINER ID        IMAGE                COMMAND                CREATED             STATUS                       PORTS               NAMES
4ac3a09ab4d3        04251cf7a8b9         /bin/sh -c ./git_che   2 minutes ago       Exited (128) 2 minutes ago                       trusting_hawking
02c14db1bc65        pg-image:latest      /usr/lib/postgresql/   5 minutes ago       Up 5 minutes                                     postgres
6a022281382f        redis-image:latest   /usr/bin/redis-serve   8 minutes ago       Up 8 minutes                 6379/tcp            redis-db

您需要先删除该容器,然后才能删除该映像。

# removes container 4ac3a09ab4d3
$ docker rm 4ac

# removes image 04251cf7a8b9
$ docker rmi 042
Deleted: 04251cf7a8b9efd81b8de6fbc0099f12a7933307bd4ecdadbaa9f1672b4a5f8f
Deleted: 7f76b7a22ef2c66a148714980716e7d01d97455b303cbeb7cc371ccba8bb5153
Deleted: bb7221a7b4a01573b0e3a175f3242f5e0ef58371c89a59dec7831146d6102bf8
Deleted: 493a63262d20f2a3ffc050c85d30528ab8a93c9dd2718fdb27dbbaac1a551c06
...

这样,容器 (4ac3a09ab4d3) 和映像 (04251cf7a8b9) 都已从您的系统中删除。

相关内容