jenkins 当从不同的github存储库中梳理x个微服务时,在哪里存储docker-compose.yml

dbf7pr2w  于 2023-06-21  发布在  Jenkins
关注(0)|答案(1)|浏览(126)

我是微服务和Docker的新手。我有3个微服务,来自3个不同的Github存储库和语言,我想将它们包含在docker-composite.yml文件中。从我所读到的内容中,我知道如果我正在进行本地构建,应该如何做到这一点,即将每个存储库放在父存储库下的子文件夹中,该子文件夹中也有父存储库中的组合文件。我不知道的是,如何将相同的compose文件存储在Github中,以便将来可以使用jenkins复制构建。或者我应该换个方式来做?

sqxo8psd

sqxo8psd1#

有多种方法:
1.您可以创建一个mono存储库,并将3个微服务组合到一个存储库中
1.您可以创建第四个存储库,其中只包含docker-compose文件,并使用git子模块引用其他3个存储库
1.您可以创建第四个存储库,其中仅包含docker-compose文件,并使用内部/公司docker注册表来引用映像。每个微服务存储库都必须包含自己构建和上传Docker镜像的代码。
1.既然你是Jenkins的同事,不如看看这个?Checkout multiple git repos into same Jenkins workspace
如果我必须选择,我会选择第一个解决方案,因为它使一切变得简单得多:

  • 你在一次提交中就有了一个实际工作的版本
  • 您的测试可以跨越所有微服务,并且可以在合并代码之前执行真正的E2 E测试
  • 开发人员的设置要简单得多,因为他们只需要 checkout 一个存储库。您可以添加帮助脚本来启动一切等等

相关问题