docker容器链接翻译额外信息

时间:2016-01-08 06:24:02

标签: docker boot2docker

我有一个简单的示例设置,运行centos或ubuntu图像我发现已安装的卷内的所有符号链接都已损坏。

给出目录结构

  

testsyms
  真正
  --one
  --twoHundred
  --three
  SYMS
  --one
  --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

我在容器外创建了一个和两个Hundred,而我在容器内创建了第三个链接。在容器链接内部,一个和两个已经破坏了。在容器链接3之外,您可以从上面的输出中看到它们。

更新 - 根据评论,我试图ssh到docker机器,发现链接都是正确的,不正确的。做一些挖掘我发现我在两个地方有我的共享文件夹Users。我有一个/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的配置

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"

要解决这个问题,事实证明我只需要安装一个不同的文件夹。我尝试使用-v /mnt/hgfs/Users/...启动docker并且它没有任何问题。我真的很想知道如何设置我的虚拟机,所以这对我团队中的其他开发人员来说不是问题。我最好的选择是忽略破坏的目录并挂载一个新目录吗?

0 个答案:

没有答案