Docker 错误无法删除 docker 容器,冲突:无法删除存储库引用
Docker error cannot delete docker container, conflict: unable to remove repository reference
我想删除Docker处的容器,但是删除时出现错误
删除容器之前我的下一步,查看现有容器列表
sts@Yudi:~/docker$ sudo docker ps -as
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
78479ffeba5c ubuntu "/bin/bash" 42 hours ago Exited (0) 42 hours ago sharp_wescoff 81 B (virtual 187.7 MB)
0bd2b54678c7 training/webapp "python app.py" 5 days ago Exited (0) 5 days ago backstabbing_ritchie 0 B (virtual 323.7 MB)
0adbc74a3803 training/webapp "python app.py" 5 days ago Exited (143) 5 days ago drunk_feynman 0 B (virtual 323.7 MB)
一个我要删除的列表,即"training / webapp"
但是发生了一个错误
sts@Yudi:~/docker$ sudo docker rmi training/webapp
Error response from daemon: conflict: unable to remove repository reference "training/webapp" (must force) - container 0bd2b54678c7 is using its referenced image 54bb4e8718e8
Error: failed to remove images: [training/webapp]
图像中的容器是否 运行?
请帮忙
您可以使用 -f
选项强制删除容器。
sudo docker rmi -f training/webapp
您可以在删除
之前停止使用 sudo docker stop training/webapp
的容器
首先,删除容器名称
$ sudo docker rm backstabbing_ritchie
结果
$ sudo docker rm backstabbing_ritchie
backstabbing_ritchie
删除第二部分,在要删除的容器中列出
$ sudo docker rm drunk_feynman
drunk_feynman
其次,移除容器
$ sudo docker rmi training/webapp
结果
$ sudo docker rmi training/webapp
Untagged: training/webapp:latest
Deleted: 54bb4e8718e8600d78a5d7c62208c2f13c8caf0e4fe73d2bc0e474e93659c0b5
Deleted: f74dd040041eb4c032d3025fe38ea85de8075992bdce6789b694a44b20feb8de
Deleted: 7cbae69141977b99c44dc6957b032ad50c1379124d62b7d7d05ab7329b42348e
Deleted: abb991a4ed5e4cde2d9964aec4cccbe0015ba9cc9838b696e7a32e1ddf4a49bd
Deleted: 1952e3bf3d7e8e6a9b1e23bd4142e3c42ff7f4b7925122189704323593fd54ac
Deleted: f95ebd363bf27a7546deced7a41a4099334e37a3d2901fa3817e62bb1ade183f
Deleted: 20dd0c75901396d41a7b64d551ff04952084cc3947e66c67bae35759c80da338
Deleted: 2505b734adda3720799dde5004302f5edb3f2a2ff71438f6488b530b728ba666
Deleted: 2ee0b8f351f753f78f1178000ae37616eb5bf241d4ef041b612d58e1fd2aefdc
Deleted: 2ce633e3e9c9bd9e8fe7ade5984d7656ec3fc3994f05a97d5490190ef95bce8d
Deleted: 98b15185dba7f85308eb0e21196956bba653cf142b36dc08059b3468a01bf35d
Deleted: 515565c29c940355ec886c992231c6019a6cffa17ff1d2abdfc844867c9080c5
Deleted: 2880a3395eded9b748c94d27767e1e202f8d7cb06f1e40e18d1b1c77687aef77
检查大陆
$ sudo docker ps -as
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
78479ffeba5c ubuntu "/bin/bash" 43 hours ago Exited (0) 43 hours ago sharp_wescoff 81 B (virtual 187.7 MB)
如果您启动了多个 docker 容器,请使用此
$ docker rm $(docker ps -aq)
它将删除 "ps -aq" 命令中列出的所有当前 docker。
上的 aaam
docker 图像和 docker 容器之间存在差异。检查这个 SO Question.
简而言之,容器就是一个可运行的镜像实例。这就是为什么如果图像中有 运行 容器,则不能删除该图像。 您只需要先删除容器即可。
docker ps -a # Lists containers (and tells you which images they are spun from)
docker images # Lists images
docker rm <container_id> # Removes a stopped container
docker rm -f <container_id> # Forces the removal of a running container (uses SIGKILL)
docker rmi <image_id> # Removes an image
# Will fail if there is a running instance of that image i.e. container
docker rmi -f <image_id> # Forces removal of image even if it is referenced in multiple repositories,
# i.e. same image id given multiple names/tags
# Will still fail if there is a docker container referencing image
更新 Docker 1.13+ [自 2017 年 1 月]
In Docker 1.13, we regrouped every command to sit under the logical object it’s interacting with
基本上,上面的命令也可以重写,更清楚,如:
docker container ls -a
docker image ls
docker container rm <container_id>
docker image rm <image_id>
此外,如果您想删除 EVERYTHING,您可以使用:
docker system prune -a
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all unused images
- all build cache
注意到这是一个已有 2 年历史的问题,但仍想分享我针对这个特定问题的解决方法:
首先,运行 docker container ls -a
列出您拥有的所有容器并确定要删除的容器。
其次,删除命令为docker container rm <CONTAINER ID>
的(如果容器当前为运行ning,则先停止,运行 docker container stop <CONTAINER ID>
优雅停止指定容器,如果无论出于何种原因都不会停止它,或者您可以 运行 docker container kill <CONTAINER ID> to force shutdown of the specified container
)。
第三,通过 运行ning docker container rm <CONTAINER ID>
删除容器。
最后,您可以 运行 docker image ls -a
查看所有图像并通过 运行 宁 docker image rm <hash>
.
删除您想要的图像
如果你想清理 docker 个图像和容器
注意:这会刷新所有内容
停止所有容器
docker stop $(docker ps -a -q)
删除所有容器
docker rm $(docker ps -a -q)
删除所有图像
docker rmi -f $(docker images -a -q)
删除 docker 张图片 >
列出所有容器
docker container ls
列出所有图片
docker image ls
按容器 ID 停止容器
docker container stop <container_id>
按容器 ID 删除容器
docker container rm <container_id>
如果不想停止移除,可以强制移除
docker container rm -f <container_id>
删除图片
docker image rm <image_id>
完成!
仅删除与特定图像关联的容器
docker ps -a | grep training/webapp | cut -d ' ' -f 1 | xargs docker rm
- ps -a: list all containers
- grep training/webapp : filter out everything but the containers started from the training/webapp image
- cut -d ' ' -f 1: list only the container ids (first field when delimited by space)
- xargs docker rm : send the container id list output to the docker rm command to remove the container
列出你所有的 docker 图片:
docker images
列出所有存在的 docker 个容器:
docker ps -a
删除所有目标容器,它正在使用您要删除的图像:
docker rm <container-id>
删除目标图片:
docker rmi <image-name:image-tag or image-id>
删除 docker
中的“找不到网络”
检查无法删除的网络
docker network inspect [<id> or <name>]
断开网络
docker network disconnect -f [<networkID> or <networkName>] [<endpointName> or <endpointId>]
删除不用的网络
docker network prune
1 站 运行 容器:
docker stop <container-id>
2-删除容器
docker rm <container-id>
3-删除 docker 图片
docker rmi <image-id>
我想删除Docker处的容器,但是删除时出现错误
删除容器之前我的下一步,查看现有容器列表
sts@Yudi:~/docker$ sudo docker ps -as
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
78479ffeba5c ubuntu "/bin/bash" 42 hours ago Exited (0) 42 hours ago sharp_wescoff 81 B (virtual 187.7 MB)
0bd2b54678c7 training/webapp "python app.py" 5 days ago Exited (0) 5 days ago backstabbing_ritchie 0 B (virtual 323.7 MB)
0adbc74a3803 training/webapp "python app.py" 5 days ago Exited (143) 5 days ago drunk_feynman 0 B (virtual 323.7 MB)
一个我要删除的列表,即"training / webapp" 但是发生了一个错误
sts@Yudi:~/docker$ sudo docker rmi training/webapp
Error response from daemon: conflict: unable to remove repository reference "training/webapp" (must force) - container 0bd2b54678c7 is using its referenced image 54bb4e8718e8
Error: failed to remove images: [training/webapp]
图像中的容器是否 运行?
请帮忙
您可以使用 -f
选项强制删除容器。
sudo docker rmi -f training/webapp
您可以在删除
之前停止使用sudo docker stop training/webapp
的容器
首先,删除容器名称
$ sudo docker rm backstabbing_ritchie
结果
$ sudo docker rm backstabbing_ritchie
backstabbing_ritchie
删除第二部分,在要删除的容器中列出
$ sudo docker rm drunk_feynman
drunk_feynman
其次,移除容器
$ sudo docker rmi training/webapp
结果
$ sudo docker rmi training/webapp
Untagged: training/webapp:latest
Deleted: 54bb4e8718e8600d78a5d7c62208c2f13c8caf0e4fe73d2bc0e474e93659c0b5
Deleted: f74dd040041eb4c032d3025fe38ea85de8075992bdce6789b694a44b20feb8de
Deleted: 7cbae69141977b99c44dc6957b032ad50c1379124d62b7d7d05ab7329b42348e
Deleted: abb991a4ed5e4cde2d9964aec4cccbe0015ba9cc9838b696e7a32e1ddf4a49bd
Deleted: 1952e3bf3d7e8e6a9b1e23bd4142e3c42ff7f4b7925122189704323593fd54ac
Deleted: f95ebd363bf27a7546deced7a41a4099334e37a3d2901fa3817e62bb1ade183f
Deleted: 20dd0c75901396d41a7b64d551ff04952084cc3947e66c67bae35759c80da338
Deleted: 2505b734adda3720799dde5004302f5edb3f2a2ff71438f6488b530b728ba666
Deleted: 2ee0b8f351f753f78f1178000ae37616eb5bf241d4ef041b612d58e1fd2aefdc
Deleted: 2ce633e3e9c9bd9e8fe7ade5984d7656ec3fc3994f05a97d5490190ef95bce8d
Deleted: 98b15185dba7f85308eb0e21196956bba653cf142b36dc08059b3468a01bf35d
Deleted: 515565c29c940355ec886c992231c6019a6cffa17ff1d2abdfc844867c9080c5
Deleted: 2880a3395eded9b748c94d27767e1e202f8d7cb06f1e40e18d1b1c77687aef77
检查大陆
$ sudo docker ps -as
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
78479ffeba5c ubuntu "/bin/bash" 43 hours ago Exited (0) 43 hours ago sharp_wescoff 81 B (virtual 187.7 MB)
如果您启动了多个 docker 容器,请使用此
$ docker rm $(docker ps -aq)
它将删除 "ps -aq" 命令中列出的所有当前 docker。
上的 aaamdocker 图像和 docker 容器之间存在差异。检查这个 SO Question.
简而言之,容器就是一个可运行的镜像实例。这就是为什么如果图像中有 运行 容器,则不能删除该图像。 您只需要先删除容器即可。
docker ps -a # Lists containers (and tells you which images they are spun from)
docker images # Lists images
docker rm <container_id> # Removes a stopped container
docker rm -f <container_id> # Forces the removal of a running container (uses SIGKILL)
docker rmi <image_id> # Removes an image
# Will fail if there is a running instance of that image i.e. container
docker rmi -f <image_id> # Forces removal of image even if it is referenced in multiple repositories,
# i.e. same image id given multiple names/tags
# Will still fail if there is a docker container referencing image
更新 Docker 1.13+ [自 2017 年 1 月]
In Docker 1.13, we regrouped every command to sit under the logical object it’s interacting with
基本上,上面的命令也可以重写,更清楚,如:
docker container ls -a
docker image ls
docker container rm <container_id>
docker image rm <image_id>
此外,如果您想删除 EVERYTHING,您可以使用:
docker system prune -a
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all unused images
- all build cache
注意到这是一个已有 2 年历史的问题,但仍想分享我针对这个特定问题的解决方法:
首先,运行 docker container ls -a
列出您拥有的所有容器并确定要删除的容器。
其次,删除命令为docker container rm <CONTAINER ID>
的(如果容器当前为运行ning,则先停止,运行 docker container stop <CONTAINER ID>
优雅停止指定容器,如果无论出于何种原因都不会停止它,或者您可以 运行 docker container kill <CONTAINER ID> to force shutdown of the specified container
)。
第三,通过 运行ning docker container rm <CONTAINER ID>
删除容器。
最后,您可以 运行 docker image ls -a
查看所有图像并通过 运行 宁 docker image rm <hash>
.
如果你想清理 docker 个图像和容器
注意:这会刷新所有内容
停止所有容器
docker stop $(docker ps -a -q)
删除所有容器
docker rm $(docker ps -a -q)
删除所有图像
docker rmi -f $(docker images -a -q)
删除 docker 张图片 >
列出所有容器
docker container ls
列出所有图片
docker image ls
按容器 ID 停止容器
docker container stop <container_id>
按容器 ID 删除容器
docker container rm <container_id>
如果不想停止移除,可以强制移除
docker container rm -f <container_id>
删除图片
docker image rm <image_id>
完成!
仅删除与特定图像关联的容器
docker ps -a | grep training/webapp | cut -d ' ' -f 1 | xargs docker rm
- ps -a: list all containers
- grep training/webapp : filter out everything but the containers started from the training/webapp image
- cut -d ' ' -f 1: list only the container ids (first field when delimited by space)
- xargs docker rm : send the container id list output to the docker rm command to remove the container
列出你所有的 docker 图片:
docker images
列出所有存在的 docker 个容器:
docker ps -a
删除所有目标容器,它正在使用您要删除的图像:
docker rm <container-id>
删除目标图片:
docker rmi <image-name:image-tag or image-id>
删除 docker
中的“找不到网络”检查无法删除的网络
docker network inspect [<id> or <name>]
断开网络
docker network disconnect -f [<networkID> or <networkName>] [<endpointName> or <endpointId>]
删除不用的网络
docker network prune
1 站 运行 容器:
docker stop <container-id>
2-删除容器
docker rm <container-id>
3-删除 docker 图片
docker rmi <image-id>