子项目的Docker项目管理通过符号链接

时间:2017-07-21 08:50:21

标签: php docker composer-php docker-compose

场合

我有项目A和项目B,A依赖于B通过作曲家。 B实现A中接口的功能。

我在B中进行了正确执行的单元测试。 现在,我想通过API测试这个 - 为此,我在午餐项目A并通过HTTP API测试所有功能。

鉴于项目A,与其他开发人员共享自己的docker-compose.yml,我无法更改此配置。

更广泛的背景

我在项目A中有更多项目B.此外,我还有更多项目A,它们大多与项目A具有相似的共享依赖性。

问题

为了不运行测试,更新B上的bug,标签并在A上运行composer update有一个简单的解决方案 - 在供应商内部,我创建了符号链接来替换已安装的项目B.

docker的问题在于,在装载卷上,docker看不到符号链接(我的库)的内容。

我有

  • 适用于Mac的Docker - 边缘

链接

Similar problem, but on build image

Standard symlink, that didn't help.

复制项目

我认为,关于将项目B复制到给定的项目A供应商,但考虑到更广泛的背景,这不是未来的解决方案。

问题

  • 是否有可能在没有复制项目的情况下使用此设置?

如果没有,那么:

  • 如何管理给定架构中的子项目或符号链接以积极开发项目所有项目?
  • 你有一些工作或其他设置的建议吗?

1 个答案:

答案 0 :(得分:1)

是的,有可能。

我的设置,它通过覆盖配置将卷安装到主容器。 - 为此使用-f中的多项docker-compose

然后通过composer,symlink将容器内的卷给予项目A。

"repositories": [
    { "type": "path", "url": "PATH INSIDE CONTAINER", "options": {"symlink": true}}
],