1
测试管理资源(数据库,elasticsearch,Redis的,等等)
我们需要使用詹金斯测试一些网页应用程序,每个人都需要:使用泊坞窗和詹金斯
- 数据库(在我们的例子Postgres的)
- 搜索服务(ElasticSearch在我们的案例,但只是偶尔)
- 缓存服务器,如Redis的
到目前为止,我们刚刚对詹金斯主系统上运行这些服务,但是这会导致问题当我们想要提高rade Postgres,ES或Redis版本。并非所有应用程序都可以锁定步骤移动,并且我们希望在提交移动应用程序之前在新版本上运行测试。
我们想要做的是有规定每个作业运行的基础上,这些服务在其自己的容器每一个运行。
什么是协调这些容器的最佳方式?
无论工作是否成功,您如何启动这些辅助容器并将它们撕下来?
如何防止之间,说的端口冲突,在一个Web应用程序,并在工作中为其他网络应用的数据库作业的运行数据库?
这当然是“正确”的答案,但是我们被困在Docker 1.8中,并且您提到的功能需要更新版本的docker api才能工作。 什么其他选择? –
网络的“祖先”是'链接'。您应该能够将所有容器“链接”为一项作业。为了能够并行执行多个作业,我会努力给出链接的动态名称(例如:脚本生成具有唯一链接名称的docker-compose yml文件)。在您的机器上等待Docker升级时,这将是一个窍门。 –
如果只有Red Hat和Docker Inc可以再次成为朋友...... –