现在我们的詹金斯探员正在制作码头作品。为每个 Rails 项目添加 yml,然后运行 docker-compup。码头作曲。Yml 有一个主“ web”容器,其中包含 rbenv 和所有其他 Rails 依赖项。它链接到一个包含测试 PostgresDB 的 DB 容器。
当我们需要实际运行测试并生成退出代码时,问题就出现了。我们的 CI 服务器只有在测试脚本返回出口0的情况下才会部署,但即使其中一个容器命令失败,docker-compose 也总是返回0。
另一个问题是 DB 容器无限期地运行,甚至在 Web 容器运行完测试之后也是如此,因此 docker-compose up
永远不会返回。
有没有一种方法,我们可以使用码头组合为这个过程?我们需要能够运行容器,但退出后,Web 容器完成并返回它的退出代码。现在我们只能手动使用 docker 旋转数据库容器并使用—— link 选项运行 web 容器。