Docker 卷如何处理符号链接?

Docker 卷如何处理符号链接?

CentOS 7 - Docker 版本 1.13.1 - Docker-compose 1.21.1

因此,我遇到了这个问题,最终导致时间浪费,现在我已经开始着手解决它,我想了解“为什么”。

我有一个 Nginx 容器,其中有一个卷,./docker-volumes/nginx:/etc/nginx在主机的./nginx目录中,我有 sites-available 和 sites-enabled。sites-enabled 中有一个符号链接,指向 sites-available 中的 .conf 文件。

当运行 docker-compose 时,一切都运行良好,但是它似乎(并且最终)只是使用基本的 nginx.conf(指向包含 sites-enabled)。当我执行 nginx 容器时,ls -lah我可以看到 sites-enabled 中的 *.conf,所以我没有多想。后来我决定对容器中 sites-enabled 中的 .conf 进行 cat 操作,看看是否由于某种原因出现了问题,这时我注意到了一些东西,它告诉我没有可用的文件。<- 谜团

看到这个后,我删除了符号链接,只在 sites-enabled 中删除了 .conf,然后一切都按预期工作了。问题是我在另一台服务器上运行这个,符号链接工作得很好。

所以最大的问题是当我执行到容器中时我可以符号链接文件,但当我打开cat它时,它说不存在这样的文件?这与 CentOS、Docker 处理卷的方式等有关吗?我知道这可能是一个非常偶然的情况,似乎没有任何韵律或理由。

如果您知道一些事情,请分享,我真的希望这件事能有个了结。

相关内容