【问题标题】:Docker Compose - symlink in deploymentDocker Compose - 部署中的符号链接
【发布时间】:2016-01-29 08:44:56
【问题描述】:

我有一个具有这种结构的应用程序。

  • /path/releases
  • /path/releases/01012016
  • /path/releases/16012016
  • /path/releases/etc..

还有

  • /path/dev(某些版本的符号链接)
  • /path/stag (某些版本的符号链接)
  • /path/stable(一些符号链接 版本)

我的 docker-compose.yml 看起来像这样:

nginx:
    ...
    volumes_from:
      - data

php:
    ...
    volumes_from:
      - data

data:
    volumes:
      - /path/stable:/var/www

我知道 Docker 会解析符号链接。在部署之前我曾想过我只是重新创建数据容器,没关系。但事实并非如此。

我必须重新创建从数据容器中获取卷的所有容器。

知道如何让它变得更好,我的意思是更好的自动化吗?删除符号链接并将最新版本放入 docker-compose?将父文件夹标记为卷并通过相对符号链接解决它?或任何其他解决方案。

哪种解决方案最适合您。最佳做法是什么。

谢谢。费利克斯

【问题讨论】:

    标签: php nginx docker symlink docker-compose


    【解决方案1】:

    如果您只是想让它更自动化,可以使用docker-compose up --force-recreate 重新创建一个 docker-compose.yml 中的所有容器。

    另一种解决方案是:

    /path:/var
    

    …然后 ln -s /path/releases/06012016 /path/www 当你想改变时。

    我不太喜欢这种解决方案,因为它会在容器中公开所有版本。我宁愿完全重启--force-recreate。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多