我设法在/var/lib/docker/containers目录下找到了容器,但我找不到图像。
/var/lib/docker下的目录和文件是什么?
我设法在/var/lib/docker/containers目录下找到了容器,但我找不到图像。
/var/lib/docker下的目录和文件是什么?
当前回答
在Fedora上,如果可用的话,Docker使用LVM作为存储。在我的系统上,docker信息显示:
Storage Driver: devicemapper
Pool Name: vg01-docker--pool
Pool Blocksize: 524.3 kB
Base Device Size: 10.74 GB
Backing Filesystem: xfs
Data file:
Metadata file:
Data Space Used: 9.622 GB
...
在这种情况下,要增加存储空间,就必须使用LVM命令行工具或兼容的分区管理器(如blivet)。
其他回答
使用docker inspect container_id 在MergedDir下找到文件夹
# example.
"MergedDir": "/var/lib/docker/overlay2/f40cc2ea8912ec3b32deeef5a1542a132f6e918acb/merged
sudo docker info | grep -e "Root Dir"
/var/lib/docker目录的内容取决于Docker用于存储的驱动程序。
默认情况下,这将是aufs,但可以回落到overlay, overlay2, btrfs, devicemapper或zfs,这取决于你的内核支持。在大多数地方,这将是aufs,但红帽使用设备映射器。
您可以使用-s或——storage-driver=选项手动将存储驱动程序设置为Docker守护进程。
/var/lib/docker/{driver-name}将包含用于映像内容的驱动程序特定存储。 >现在只包含关于图像的元数据,在json和layersize文件中。
对于aufs:
/var/lib/docker/aufs/diff/<id>包含镜像的文件内容。 /var/lib/docker/repositories-aufs是一个包含本地映像信息的JSON文件。这可以通过命令docker图像来查看。
在设备映射器的情况下:
/var/lib/docker/devicemapper/devicemapper/data存放映像 /var/lib/docker/devicemapper/devicemapper/metadata元数据 请注意,这些文件是精简的“稀疏”文件,因此并不像它们看起来那么大。
检查/var/lib目录下的docker文件夹
图像存储在以下位置:
/var/lib/docker/image/overlay2/imagedb/content
这是过去的做法,现在已经改变了。从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 .