目前我们有一个NodeJS monolith应用程序。测试在Codeship中运行,如果测试为绿色,则代码将部署到Heroku。这很容易。
因此,我们想将我们的monolith应用程序分解为微服务,我们更喜欢monorepo解决方案。
例如,我们在回购中有service-1
和service-2
。我们希望为Codeship上的每个服务设置独立的CI和部署管道。
my-repo
- service-1
- src
- package.json
- docker-compose.yml
- codeship-steps.yml
- service-2
- src
- package.json
- docker-compose.yml
- codeship-steps.yml
你知道我们如何设置理想的CI吗?
Yes CodeShip Pro提供了一种类似Docker Compose的方法,可以从同一项目空间设置多个服务。假设微服务已经被拆分到它们的特定文件夹中,codeship-services.yml
可能如下所示:
service-a:
build:
context: ./service-a
dockerfile: Dockerfile # The Dockerfile in ./service-a directory
service-b:
build:
context: ./service-b
请查看我们的全面介绍指南以了解更多信息