我设法在/var/lib/docker/containers目录下找到了容器,但我找不到图像。
/var/lib/docker下的目录和文件是什么?
我设法在/var/lib/docker/containers目录下找到了容器,但我找不到图像。
/var/lib/docker下的目录和文件是什么?
当前回答
如果你记住Docker仍然在虚拟机中运行,系统路径是相对于虚拟机的,而不是来自Mac Osx系统。 正如它所说的,所有内容都包含在VM文件中:
/ \用户MyUserName / Library / Containers / com .道克道克/数据/ com .道克。司机qcow2 amd64-linux -道克。
尝试使用此volume选项和ls命令运行Alpine image,您可以列出虚拟机主机:
Docker运行——rm -it -v /:/vm-root alpine:edge ls -l /vm-root
然后试试:
Docker运行——rm -it -v /:/vm-root alpine:edge ls -l / vm-root / var / lib /码头工人
现在,您可以列出来自VM主机的docker文件夹
其他回答
这是过去的做法,现在已经改变了。从2019年开始,请忽略这个答案
在Mac OS X或Windows的特殊情况下,使用boot2docker,您的Docker映像存储在由boot2docker管理的VirtualBox虚拟机中。
该虚拟机将存储在VirtualBox镜像的正常位置:
OS X: ~/VirtualBox VMs/boot2docker-vm
窗口:%用户框%/虚拟盒子VMs/boot2docker-vm
你可以通过运行(警告:这将破坏你迄今为止构建和下载的所有图像)来重置它:
boot2docker down
boot2docker destroy
boot2docker init
boot2docker up
如果你在没有——rm选项的情况下构建/调试构建时保存了大量的中间映像,这一点特别有用,我在这里引用它们作为参考: 使用:
docker build -t webapp --rm=true --force-rm=true .
而不是:
docker build -t webapp .
在2021年的macOS上,唯一可能的解决方案是使用bash访问Docker VM,然后查看它的本地结构:
Docker运行-ti——privilege——pid=host debian nsenter -t 1 -m -u -n -i sh cd /var/lib/docker/
欢迎你!
在Ubuntu上,你可以“玩”运行图像
sudo baobab /var/lib/docker
实际上,图像存储在/var/lib/docker/aufs/diff中
图像存储在/var/lib/docker/graph/<id>/layer。
注意,图像只是与父图像不同。父ID存储在映像的元数据/var/lib/docker/graph/< ID >/json中。
当你docker运行一个映像。AUFS将“合并”所有层到一个可用的文件系统。
就像这里回答的,如果你在Mac上,它位于
/Users/MyUserName/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2