我正在构建一个具有几个微服务
的应用程序,并尝试使用Codeship
和构建
.CI/CD
管道原型(prototype)Docker
我对使用codeship-services.yml
和docker-compose.yml
之间的区别有点困惑。 Codeship 文档说 -
By default, we look for the filename codeship-services.yml. In its absence, Codeship will automatically search for a docker-compose.yml file to use in its place.
根据我的理解,docker-compose
可能更适合我的情况,因为我想同时为所有微服务
启动容器以进行集成测试。如果我想串行而不是并行构建我的服务,codeship-services.yml
将会有所帮助。
我的理解正确吗?
请您参考如下方法:
您可以使用codeship-services.yml
以与 docker-compose.yml
相同的方式。因此,您可以通过link
定义您的服务并启动多个容器。关键。
我在我的 codeship-services.yml
中做了完全相同的事情。我对我的前端服务做了一些测试,当我通过 codeship-steps.yml
运行它时,该服务会启动所有依赖的服务(后端、数据库等)。 ,就像 docker-compose.yml
中一样.
一开始,我对有两个几乎相同的文件感到有点困惑。我实际上就这个问题联系了 Codeship 支持人员,答案是它可能是同一个文件(因为 compose 文件中的所有不可用功能都被忽略,请参阅 here ),但在几乎所有情况下,他们都发现更容易最后有两个单独的文件,一个用于 CI/CD,另一个用于运行 docker-compose。
对我来说也是如此,因为我需要很多仅适用于 CI/CD 的服务,例如部署或仅执行 cURL 测试的特殊测试容器。
我希望这对您有所帮助,并且不会让您更加困惑;)