如果我有一个码头-撰写文件,如:
version: "3"
services:
postgres:
image: postgres:9.4
volumes:
- db-data:/var/lib/db
volumes:
db-data:
..。然后执行docker-compose up
为db-data
创建一个命名卷。有办法通过docker-compose
删除这个卷吗?如果它是一个匿名卷,那么docker-compose rm -v postgres
就能做到这一点。但就目前情况而言,我不知道如何删除db-data
卷而不恢复到docker
命令。这感觉在docker-compose
CLI中应该是可能的。我是不是遗漏了什么?
发布于 2017-08-04 09:42:25
docker-compose down -v
移除所有附加的卷。见文档
发布于 2019-10-16 17:05:46
没有办法用docker-compose
cli来移除特定的命名卷。相反,可以使用docker
cli来实现这一点。见文档。
使用docker volume ls
查找特定卷的名称。
使用docker volume rm VOLUME_NAME
删除卷。您需要使用该卷停止并移除容器。
一个示例方法:
# Stop and remove container's using the target volume
docker-compose stop NAME_OF_CONTAINER
# We need the force flag, "-f", as the container is still bound to the volume
docker-compose rm -f NAME_OF_CONTAINER
# Next find your volume name in the following list
docker volume ls
# Finally remove the volume
docker volume rm VOLUME_NAME
发布于 2021-03-28 18:07:22
2022年1月更新:
这将删除docker-compose.中定义的所有 containers、网络、卷和E 110
图像E 211
。
docker-compose down -v --rmi all
"-v"是的所有卷
"--rmi all"代表所有的图像
https://stackoverflow.com/questions/45511956
复制