用于确定性CI构build的便携式docker守护程序
我们希望利用Docker在CI构build中运行集成testing(使用Bazel )。 我们需要支持Debian以及MacOS。
为了保证构build的正确性,并确保确定性和可移植性,我们不能依赖具有正在运行的docker守护进程的主机。 构build需要自带docker守护进程。 达到这个目标的最好方法是什么? 有没有一个标准的“便携式”docker二进制文件? 如果不是的话,你认为怎样才能正确实施呢? 在Linux系统中,我想这将是相对简单的,因为我们只需要下载二进制文件并运行。 在MacOS中,我想我们需要将它与hyperkit捆绑在一起。
很想听听你的想法。
在构buildDocker镜像方面,你应该看看bazelbuild/rules_docker
(声明:我写/拥有它们)。 他们实现了我所知道的唯一正确确定性的Docker 构build (至less符合Bazel的标准)。
他们通过避免Dockerfile和Docker守护进程(大多数其他方法使用)来做到这一点,因为不清楚这些会产生确定性的工件。 这也避免了根本要求,这很好。
但是,您具体询问了有关testing ,我们还没有解决的问题。
@ittaiz也对此感兴趣,并开始讨论这个 Github问题。 你介意在那里讨论一下吗?
- 无法让MLT框架在Docker容器中处理audio
- 我如何用payara mini创build一个docker文件?
- 什么添加到我的SBT支持非播放项目的Docker镜像创build?
- 如何在Google Container Engine(GKE)中代理泊坞窗registry?
- 用Ansible将命令行parameter passing给Docker
- 如何将发布的端口绑定到docker swarm模式下的特定eth
- 在Docker上安装CKAN时没有指定CKAN_SQLALCHEMY_URL
- 我怎样才能得到在一台机器上启动的一个单位的IP地址,并在另一个机组中使用它?
- Akka 2.5分布式数据在Docker + Alpine Linux上