【容器】Docker之Mac下host与container之间Volume映射问题
问题描述:Mac下运行docker容器时,其卷挂载方式与在普通Linux上不同,普通Linux上host与container之间Volume映射关系可参考这篇文章。本文中container的名字是graphite,用命令行查看container的volume挂载情况:➜~ docker inspect graphite......"Mounts": [...
·
问题描述:
Mac下运行docker容器时,其卷挂载方式与在普通Linux上不同,普通Linux上host与container之间Volume映射关系可参考这篇文章。本文中container的名字是graphite,用命令行查看container的volume挂载情况:
➜ ~ docker inspect graphite
...
...
"Mounts": [
{
"Type": "volume",
"Name": "5676877cb2df79ee28190c1be5f44eb7a4b6cae2b73d4c8d450d5408935015a4",
"Source": "/var/lib/docker/volumes/5676877cb2df79ee28190c1be5f44eb7a4b6cae2b73d4c8d450d5408935015a4/_data",
"Destination": "/opt/graphite/conf",
"Driver": "local",
"Mode": "",
"RW": true,
"Propagation": ""
},
...
...
]
可见host的volume是:
"/var/lib/docker/volumes/5676877cb2df79ee28190c1be5f44eb7a4b6cae2b73d4c8d450d5408935015a4/_data"
对应到container中的volume是:
"/opt/graphite/conf"
此时如果尝试进入host上对应的目录会出错,提示目录不存在:
➜ ~ cd /var/lib/docker/volumes/5676877cb2df79ee28190c1be5f44eb7a4b6cae2b73d4c8d450d5408935015a4/_data
cd: no such file or directory: /var/lib/docker/volumes/5676877cb2df79ee28190c1be5f44eb7a4b6cae2b73d4c8d450d5408935015a4/_data
解决方法:
在Mac OS下,进入以下目录
~/Library/Containers/com.docker.docker/Data/vms/0/
可以看到目录下有一个tty设备,screen连接进去,host对应的volume可以在这个linux实例中找到,进入该目录,其中的文件与container中的/opt/graphite/conf目录下的内容一致:
➜ ~ cd ~/Library/Containers/com.docker.docker/Data/vms/0
➜ 0 ll
total 9853192
srwxr-xr-x 1 chenxi staff 0B Sep 20 14:25 00000002.000005f4
srwxr-xr-x 1 chenxi staff 0B Sep 20 14:25 00000002.00001000
srwxr-xr-x 1 chenxi staff 0B Sep 20 14:25 00000002.00001001
srwxr-xr-x 1 chenxi staff 0B Sep 20 14:25 00000003.000005f5
srwxr-xr-x 1 chenxi staff 0B Sep 20 14:25 00000003.00000948
-rw-r--r--@ 1 chenxi staff 60G Sep 20 15:29 Docker.raw
-rw-r--r-- 1 chenxi staff 92K Sep 20 14:25 config.iso
srwxr-xr-x 1 chenxi staff 0B Sep 20 14:25 connect
lrwxr-xr-x 1 chenxi staff 17B Sep 20 14:25 guest.000005f5 -> 00000003.000005f5
lrwxr-xr-x 1 chenxi staff 17B Sep 20 14:25 guest.00000948 -> 00000003.00000948
-rw-r--r-- 1 chenxi staff 2.2K Sep 20 14:25 hyperkit.json
-rw-r--r-- 1 chenxi staff 5B Sep 20 14:25 hyperkit.pid
drwxr-xr-x 2 chenxi staff 64B Aug 21 15:26 log
-rw-r--r-- 1 chenxi staff 36B Aug 21 15:26 nic1.uuid
lrwxr-xr-x 1 chenxi staff 12B Sep 20 14:25 tty -> /dev/ttys006
➜ 0 screen tty
####下面进入了linux实例####
linuxkit-025000000001:~#
linuxkit-025000000001:~#
linuxkit-025000000001:~# cd /var/lib/docker/volumes/5676877cb2df79ee28190c1be5f44eb7a4b6cae2b73d4c8d450d5408935015a4/_data
linuxkit-025000000001:/var/lib/docker/volumes/5676877cb2df79ee28190c1be5f44eb7a4b6cae2b73d4c8d450d5408935015a4/_data#ls -l
total 144
-rw-r--r-- 1 root root 1477 Sep 5 20:16 aggregation-rules.conf
-rw-r--r-- 1 root root 1798 Sep 16 19:04 aggregation-rules.conf.example
-rw-r--r-- 1 root root 274 Sep 5 20:16 blacklist.conf
-rw-r--r-- 1 root root 492 Sep 16 19:04 blacklist.conf.example
-rw-r--r-- 1 root root 2593 Sep 5 20:16 carbon.amqp.conf
-rw-r--r-- 1 root root 2596 Sep 16 19:04 carbon.amqp.conf.example
-rw-r--r-- 1 root root 27458 Sep 5 20:16 carbon.conf
-rw-r--r-- 1 root root 29876 Sep 16 19:04 carbon.conf.example
-rw-r--r-- 1 root root 1892 Sep 5 20:16 dashboard.conf
-rw-r--r-- 1 root root 1891 Sep 16 19:04 dashboard.conf.example
-rw-r--r-- 1 root root 729 Sep 5 20:16 graphTemplates.conf
-rw-r--r-- 1 root root 2445 Sep 16 19:04 graphTemplates.conf.example
-rwxr-xr-x 1 root root 90 Sep 16 19:04 graphite.wsgi.example
-rw-r--r-- 1 root root 873 Sep 5 20:16 relay-rules.conf
-rw-r--r-- 1 root root 888 Sep 16 19:04 relay-rules.conf.example
-rw-r--r-- 1 root root 558 Sep 5 20:16 rewrite-rules.conf
-rw-r--r-- 1 root root 558 Sep 16 19:04 rewrite-rules.conf.example
-rw-r--r-- 1 root root 988 Sep 5 20:16 storage-aggregation.conf
-rw-r--r-- 1 root root 827 Sep 16 19:04 storage-aggregation.conf.example
-rw-r--r-- 1 root root 881 Sep 5 20:16 storage-schemas.conf
-rw-r--r-- 1 root root 1040 Sep 16 19:04 storage-schemas.conf.example
-rw-r--r-- 1 root root 315 Sep 5 20:16 whitelist.conf
-rw-r--r-- 1 root root 315 Sep 16 19:04 whitelist.conf.example
更多推荐
已为社区贡献1条内容
所有评论(0)