Continuous integration 基于docker compose的CI?

Continuous integration 基于docker compose的CI?,continuous-integration,docker-compose,Continuous Integration,Docker Compose,我目前正在构建一个小应用程序,需要安装一些非常烦人的软件并在后台运行。为了减轻开发的痛苦,我编写了一组docker compose文件,运行必要的守护进程,创建一些作业,并输入一些测试数据 现在,我想以一种类似CI的方式运行它。我目前让Jenkins检查所有不同的存储库,并执行一个shell脚本,该脚本调用docker compose-up——在容器退出时中止。这就完成了任务,但看起来像是一个黑客,我不是詹金斯的超级粉丝 我想问的是:有没有更好的方法?具体而言,是否有一个CI将 观看一组git

我目前正在构建一个小应用程序,需要安装一些非常烦人的软件并在后台运行。为了减轻开发的痛苦,我编写了一组docker compose文件,运行必要的守护进程,创建一些作业,并输入一些测试数据

现在,我想以一种类似CI的方式运行它。我目前让Jenkins检查所有不同的存储库,并执行一个shell脚本,该脚本调用
docker compose-up——在容器退出时中止。这就完成了任务,但看起来像是一个黑客,我不是詹金斯的超级粉丝

我想问的是:有没有更好的方法?具体而言,是否有一个CI将

  • 观看一组git存储库
  • 重新执行docker compose(可能使用不同的参数集多次),以及
  • 很好地收集和分割日志,并告诉我哪个容器到底是如何失败的
  • (可选)不是某些云服务,而是可安装在我的本地服务器上
如果这个问题的答案是“写一个詹金斯模块”,那么好吧,就这样吧。 我知道也有类似gitlab ci的选项,但我希望在开发过程中,在进行回购之前,能够以一种易于执行的方式保留ci脚本