使用Docker进行持续集成

持续集成(CI)是开发过程中的一部分,您希望将代码更改与项目的主分支合并。此时,开发团队会运行测试和构建,以验证代码更改不会引起任何不必要或意外的行为。

Git branches about to get merged

在开发的这个阶段,Docker 有几种用途,即使你最终没有将应用程序打包为容器镜像。

Docker 作为构建环境

容器是可重复的、隔离的环境,能够产生可预测的结果。在Docker容器中构建和测试您的应用程序,可以更容易地防止意外行为的发生。使用Dockerfile,您可以定义构建环境的确切要求,包括编程运行时、操作系统、二进制文件等。

使用Docker来管理您的构建环境还可以简化维护工作。例如,更新到编程运行时的新版本可以像在Dockerfile中更改标签或摘要一样简单。无需通过SSH连接到宠物虚拟机手动重新安装新版本并更新相关的配置文件。

此外,正如您期望第三方开源包是安全的一样,您的构建环境也应如此。您可以扫描和索引构建器镜像,就像您对任何其他容器化应用程序所做的那样。

以下链接提供了如何在CI中使用Docker构建应用程序的入门指南:

Docker in Docker

你也可以使用Docker化的构建环境来使用Docker构建容器镜像。也就是说,你的构建环境运行在一个容器内,而这个容器本身配备了运行Docker构建的能力。这种方法被称为“Docker中的Docker”。

Docker 提供了一个官方的 Docker 镜像 你可以用于此目的。

下一步是什么

Docker 维护了一套官方的 GitHub Actions,您可以在 GitHub Actions 平台上使用它们来构建、注释和推送容器镜像。请参阅 GitHub Actions 简介 了解更多信息并开始使用。