Docker镜像存储在主机上的位置是什么?
我设法找到目录/var/lib/docker/containers
,但找不到图像。
/var/lib/docker
下的目录和文件是什么?
/var/lib/docker
目录的内容取决于Docker用于存储的驱动程序。
默认情况下,这将是aufs
但可以回退到overlay
, overlay2
, btrfs
, devicemapper
或zfs
具体取决于您的内核支持。 在大多数地方这将是aufs
但RedHats与devicemapper
一起使用。
您可以使用-s
或--storage-driver=
选项手动将存储驱动程序设置为Docker守护进程。
/var/lib/docker/{driver-name}
将包含映像内容的驱动程序特定存储。 /var/lib/docker/graph/<id>
现在只包含关于图像的元数据,位于json
和layersize
文件中。 在aufs
的情况下:
/var/lib/docker/aufs/diff/<id>
具有图像的文件内容。 /var/lib/docker/repositories-aufs
是一个包含本地图像信息的JSON文件。 这可以使用命令docker images
查看。 在devicemapper
的情况下:
/var/lib/docker/devicemapper/devicemapper/data
存储图像 /var/lib/docker/devicemapper/devicemapper/metadata
的元数据 当使用Docker for Mac应用程序时,看起来这些容器存储在位于以下位置的虚拟机中:
~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2
在Mac OS X或Windows的特殊情况下,使用boot2docker,您的Docker镜像存储在由boot2docker管理的VirtualBox VM中。
该虚拟机将存储在VirtualBox映像的正常位置:
OS X: ~/VirtualBox VMs/boot2docker-vm
Windows: %USERPROFILE%/VirtualBox 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 .
链接地址: http://www.djcxy.com/p/18265.html
上一篇: Where are Docker images stored on the host machine?
下一篇: What is the difference between save and export in Docker?