我使用以下参数挂载容器:
-v /home/test/:/home/test
在主机的 /home/test 目录下有一个符号链接指向 /mnt/ 文件夹。
但是,在容器内部,这个链接似乎无法使用,尽管可以看到它指向了哪里。
root@f93f72b45013:/var/www/html# cd /home/test/
root@f93f72b45013:/home/test# ls -lrt
total 11956
lrwxrwxrwx. 1 root root 40 Jul 20 15:55 file -> /mnt/mountedfile/
root@f93f72b45013:/home/test# ls -lrt file/*
ls: cannot access file/*: No such file or directory
在docker中是否有可能完成这个任务?我不确定是否有方法可以做到。
我知道我可以直接挂载符号链接指向的位置,但我只是想知道这是否可行。
/mnt
终端可能会出现问题,这可能是特定于主机的。如果可以的话,最保险的做法是避免使用它。 - ldgmount --bind
或bind -t overlay
。这些都是本地 Linux 内核功能,在容器内部完美运行。 https://unix.stackexchange.com/a/198591/423231 如果您没有合并两个目录的计划,请选择绑定挂载。 - pPanda_beta