我想在GitLab中从一个repo构建和测试多个docker . 这个monorepo拥有一些可以协同工作的微服务 .
我们有一个工作 docker compose up
来帮助本地开发,所以这是一个开始 . 目标是将构建测试移至GitLab,运行这些docker的E2E测试(端到端),并让GitLab升级我们的暂存环境 .
多个docker的构建只是(一个)管道构建阶段的多个作业,我猜测每个docker都可以进行测试,这样就可以在一个(或?)暂存环境中运行多个docker来测试整个 .
-
GitLab如何在多个码头 Worker 上运行E2E测试? (或者这是不明智的开始)
-
我们是否需要Kubernetes来实现docker-compose现在促进的inter-docker映射(网络,卷,还有依赖关系)?
我们正在使用自托管的GitLab CE实例 .
Update: 剪短,使用适当的术语 .
1 回答
我没有使用PHP,也没有为多模块做过Docker构建,尽管我尝试了一个针对Nodejs的多模块类型的快速示例 . 检查这个Repo
请参阅.gitlab-ci.yml,它构建了两个独立的hello world类型的nodejs模块 .
我现在改编它以分别构建docker图像 .
Original answer (问题已于7月12日更改)
您没有提到您所指的文档 . 您应该能够使用
.gitlab-ci.yml
进行配置AFAIK Building docker图像应该与编程语言无关 . 如果您可以在本地运行
docker build .
. 以下文档应该有帮助https://docs.gitlab.com/ee/ci/docker/using_docker_build.html您可以使用Gitlab管道来测试< - >构建图像 . 参考https://docs.gitlab.com/ee/ci/pipelines.html
请参阅此内容以获取PHP构建 - https://docs.gitlab.com/ee/ci/examples/php.html