docker集装箱链接翻译与额外的信息

我有一个简单的例子设置,运行一个centos或ubuntu镜像,我发现我的所有符号链接在一个安装的体积内都坏了。

给出目录结构

testsyms
真实
– 一
–twoHundred
– 三
SYMS
– 一
–twoHundred
– 三

并使用下面的docker命令启动我的容器

docker run -ti -v $HOME/testsyms/:$HOME/testsyms -w $HOME/testsyms

然后我做了以下
在容器内部:

 [root@96b9af1cd545 testsyms]# ls -l **/* -rw-r--r-- 1 501 games 0 Jan 8 06:00 real/one -rw-r--r-- 1 501 games 0 Jan 8 06:03 real/three -rw-r--r-- 1 501 games 0 Jan 8 06:00 real/twoHundred lrwxr-xr-x 1 501 games 11 Jan 8 06:00 syms/one -> l/one lrwxr-xr-x 1 501 games 19 Jan 8 06:03 syms/three -> ../real/three lrwxr-xr-x 1 501 games 18 Jan 8 06:01 syms/twoHundred -> l/twoHundred 

集装箱外:

 tam@tam-osx:testsyms$ ls -l **/* -rw-r--r-- 1 tam staff 0 Jan 7 23:00 real/one -rw-r--r-- 1 tam staff 0 Jan 7 23:03 real/three -rw-r--r-- 1 tam staff 0 Jan 7 23:00 real/twoHundred lrwxr-xr-x 1 tam staff 11 Jan 7 23:00 syms/one -> ../real/one lrwxr-xr-x 1 tam staff 19 Jan 7 23:03 syms/three -> /Users../real/three lrwxr-xr-x 1 tam staff 18 Jan 7 23:01 syms/twoHundred -> ../real/twoHundred 

我创build了一个和两个容器外的链接,而我在容器内创build了链接三。 容器内的链接一和二鸿沟被打破。 在容器链接之外三个是破碎的,你应该能够从上面的输出中看到。

更新 – 基于我试图SSH入docker机器的意见,并发现这些链接是正确的,不正确的。 做一些挖掘我发现我有我的共享文件夹Users在2个地方。 我有一个/Users目录,我有一个/mnt/hgfs/Users目录。 这是每个目录的输出

/ Users /:

 docker@default:/mnt/hgfs$ ls -l /Users/boger/testsyms/**/* -rw-r--r-- 1 501 20 0 Jan 8 06:00 /Users/boger/testsyms/real/one -rw-r--r-- 1 501 20 0 Jan 8 06:03 /Users/boger/testsyms/real/three -rw-r--r-- 1 501 20 0 Jan 8 06:00 /Users/boger/testsyms/real/twoHundred lrwxr-xr-x 1 501 20 11 Jan 8 06:00 /Users/boger/testsyms/syms/one -> l/one lrwxr-xr-x 1 501 20 19 Jan 8 06:03 /Users/boger/testsyms/syms/three -> ../real/three lrwxr-xr-x 1 501 20 18 Jan 8 06:01 /Users/boger/testsyms/syms/twoHundred -> l/twoHundred 

/ mnt / hgfs / Users /:

 docker@default:/mnt/hgfs$ ls -l /mnt/hgfs/Users/boger/testsyms/**/* -rw-r--r-- 1 501 20 0 Jan 8 06:00 /mnt/hgfs/Users/boger/testsyms/real/one -rw-r--r-- 1 501 20 0 Jan 8 06:03 /mnt/hgfs/Users/boger/testsyms/real/three -rw-r--r-- 1 501 20 0 Jan 8 06:00 /mnt/hgfs/Users/boger/testsyms/real/twoHundred lrwxr-xr-x 1 501 20 11 Jan 8 06:00 /mnt/hgfs/Users/boger/testsyms/syms/one -> ../real/one lrwxr-xr-x 1 501 20 19 Jan 8 06:03 /mnt/hgfs/Users/boger/testsyms/syms/three -> /Users../real/three lrwxr-xr-x 1 501 20 18 Jan 8 06:01 /mnt/hgfs/Users/boger/testsyms/syms/twoHundred -> ../real/twoHundred 

值得注意的是,它们与我在容器内部和外部展示的模式相同。 下面是我的vm共享文件夹的configuration

 sharedFolder0.present = "true" sharedFolder0.enabled = "true" sharedFolder0.readAccess = "true" sharedFolder0.writeAccess = "true" sharedFolder0.hostPath = "/Users" sharedFolder0.guestName = "Users" sharedFolder0.expiration = "never" sharedFolder0.followSymlinks = “TRUE” sharedFolder.maxNum = "1" 

要解决这个问题,事实certificate我只需要安装一个不同的文件夹。 我试着用-v /mnt/hgfs/Users/...启动docker,它没有任何问题。 我真的想知道我能做些什么来设置我的虚拟机,所以这对我的团队中的其他开发人员来说并不是问题。 是我最好的select,只是忽略破损的目录,并挂载一个新的?