Sta*_*lfi 9 docker docker-volume
我有运行大量 Docker 容器的测试。他们每个人都有一个卷。
我如何知道需要删除的卷名称?
例如:
~ docker run -d registry:2
~ docker volume inspect c80fc65a79039d70cf54b3af3ab66b378dec42d0757928ae94277b197d8d8104
[
{
"CreatedAt": "2020-08-14T11:33:50Z",
"Driver": "local",
"Labels": null,
"Mountpoint": "/var/lib/docker/volumes/c80fc65a79039d70cf54b3af3ab66b378dec42d0757928ae94277b197d8d8104/_data",
"Name": "c80fc65a79039d70cf54b3af3ab66b378dec42d0757928ae94277b197d8d8104",
"Options": null,
"Scope": "local"
}
]
Run Code Online (Sandbox Code Playgroud)
手动停止并删除registry:2容器后,该卷仍然存在。
我不想删除所有卷,因为其中一些仍在使用中。
age*_*ith 12
您不需要自己确定卷名称。实际上,您在这里有多种选择。
--rm话可以使用Flagdocker run如果设置 --rm 标志,Docker 还会在删除容器时删除与容器关联的匿名卷。这类似于运行 docker rm -v my-container。仅删除未指定名称的卷。例如,运行时:
docker system prune --volumes命令清理至少一个容器未使用的所有卷删除所有未使用的容器、网络、图像(悬空和未引用的)以及可选的卷。
如果您确实想获取容器的卷,可以使用以下代码片段
docker inspect -f '{{ .Name }}{{ printf "\n" }}{{ range .Mounts }}{{ printf "\n\t" }}{{ .Type }} {{ if eq .Type "bind" }}{{ .Source }}{{ end }}{{ .Name }} => {{ .Destination }}{{ end }}{{ printf "\n" }}' <continaer-id>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13294 次 |
| 最近记录: |