关于macos:Mac / OS X上的/ var / lib / docker在哪里

Where is /var/lib/docker on Mac/OS X

安装docker for Mac后,我在Mac上寻找文件夹/var/lib/docker

docker info得到

1
2
3
4
5
6
7
8
9
10
11
12
13
14
    Containers: 5
     ...
    Server Version: 1.12.0-rc4
    Storage Driver: aufs
     Root Dir: /var/lib/docker/aufs
     Backing Filesystem: extfs
     Dirs: 339
     Dirperm1 Supported: true
    ...
    Name: moby
    ID: LUOU:5UHI:JFNI:OQFT:BLKR:YJIC:HHE5:W4LP:YHVP:TT3V:4CB2:6TUS
    Docker Root Dir: /var/lib/docker
    Debug Mode (client): false
    ....

但是我的主机上没有目录/var/lib/docker

我检查了/Users/myuser/Library/Containers/com.docker.docker/但在那里找不到任何东西。 知道它在哪里吗?


如上面的答案所述,你会发现:
screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty

一旦你运行了tty,你就可以导航到/var/lib/docker


看到这个答案

使用Docker for Mac Application时,似乎容器存储在位于以下位置的VM中:

~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2


如果你使用Docker for Mac,这里的其他答案已经过时了。

这是我能够进入虚拟机的方式。运行命令:

screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

这是默认路径,但您可能需要先执行以下操作:
cd ~/Library/Containers/com.docker.docker/Data/vms

然后ls查看您的VM所在的目录并相应地替换"0"。

当你进去时,你可能只看到一个空白屏幕。点击"Enter"键。

此页面说明要从VM退出,您需要"Ctrl-a"然后"d"


正如@Dmitriy所说:

screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

并可以使用ctrl a + d分离屏幕

并使用screen -dr重新连接屏幕(因为如果您再次连接屏幕,终端文本将会出现乱码。)

参考

或者如果要退出,请使用ctrl + a + k,然后选择y以终止屏幕。


此路径来自Docker Host(不是来自MacOS)
因为"Docker for Mac Application"时代,VirtualBox VM在哪里"默认"并且在这个VM提到的路径中存在(当然),现在在"Docker for Mac Application"时代有一个Docker.qcow2图像,这是qemu基地。
跳进这个VM @ mik-jagger方式是可以的(但还有更多)


我会说文件:

1
/var/run/docker.sock

实际上是:

1
/Volumes/{DISKNAME}/var/run/docker.sock

如果你运行它,它应该证明它,只要你运行VirtualBox 5.2.8或更高版本和/Volumes的共享设置为自动挂载和永久和你生成默认的docker-machine同时在该版本的VirtualBox的:

1
2
3
4
#!/bin/bash
docker run -d --restart unless-stopped -p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock portainer/portainer \
--no-auth

然后,访问Portainer:192.168.99.100:9000或localhost:9000