我设法在/var/lib/docker/containers目录下找到了容器,但我找不到图像。
/var/lib/docker下的目录和文件是什么?
我设法在/var/lib/docker/containers目录下找到了容器,但我找不到图像。
/var/lib/docker下的目录和文件是什么?
当前回答
我在macos上使用上述答案无法解决Docker 18.09版本的问题,并再次尝试。
对我来说唯一的解决方案就是使用docker-compose。yml配置:
version: '3.7'
...
services:
demo-service:
volumes:
- data-volume:/var/tmp/container-volume
volumes:
data-volume:
driver: local
driver_opts:
type: none
o: bind
device: /tmp/host-volume
在启动docker-compose后,我终于将macos中的/tmp/host-volume共享为容器中的可写卷:
> docker exec -it 1234 /bin/bash
bash-4.4$ df
Filesystem 1K-blocks Used Available Use% Mounted on
...
osxfs 488347692 464780044 21836472 96% /var/tmp/container-volume
希望这也能帮助到其他人。
其他回答
在Windows 2016中,DockerMsftProvider使用docker根目录下的文件夹“windowsfilter”
>docker info
...
Storage Driver: windowsfilter
...
Docker Root Dir: C:\ProgramData\docker
...
它使用docker root下的“tmp”文件夹下载文件,并将下载的文件解压缩到“windowsfilter”文件夹后删除文件。
环境:Windows 10 Pro, docker desktop 2.0.3.0 edge
右键单击系统托盘中的docker图标,选择设置-高级:
磁盘映像位置(可通过浏览器编辑):
C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks\DockerDesktop.vhdx
(它在那里-文档目录是隐藏的)
实际上,Docker映像存储在两个文件中,如下命令所示
$ docker info
数据文件:/var/lib/docker/devicemapper/devicemapper/ Data 元数据文件:/var/lib/docker/devicemapper/devicemapper/ Metadata
在2021年的macOS上,唯一可能的解决方案是使用bash访问Docker VM,然后查看它的本地结构:
Docker运行-ti——privilege——pid=host debian nsenter -t 1 -m -u -n -i sh cd /var/lib/docker/
欢迎你!
对于正在使用Docker工具箱(使用Docker -machine)的人来说,关于Mac OS X上boot2docker的答案是无效的。docker-machine虚拟机被称为“default”,它存在于/Users/<username>/。码头工人/机械/机器/违约/目录中。