Docker如何清理所有已停止的容器但保留数据容器?
docker rm $(docker ps -qa -f status=exited)
也会删除这些数据容器!
如何清理相应的镜像?
Docker如何清理所有已停止的容器但保留数据容器?
docker rm $(docker ps -qa -f status=exited)
也会删除这些数据容器!如何清理相应的镜像?
通常情况下,没有明确的方法来区分仅数据
容器和其他容器。 如果您希望它们在清理时保留,您可能可以设计一定的命名方案,并拥有更复杂的脚本,不会删除名称以data-
开头的容器。
按照 Mykolas 的建议,我引入了一种命名规范,要求所有仅含数据的容器都以 -data
作为后缀。
删除除名为 *-data
的所有已停止容器:
docker ps -a -f status=exited | grep -v '\-data *$'| awk '{if(NR>1) print $1}' | xargs -r docker rm
删除所有未使用的图像:
docker rmi $(docker images -qa -f dangling=true)
sudo docker inspect -f "{{ index .Config.Env 0}}" f7e
,它会打印出 type=data-only
。 - user2915097
--volumes-from
定义其他容器使用的卷。通过这种方式,这些数据容器在应用程序更改时无需更新,并且可以单独处理。(参见相关问题:https://dev59.com/vmEi5IYBdhLWcg3wIJTc) - Jens Piegsa