×

构建

构建是将输入参数转换为结果对象的流程。大多数情况下,此流程用于将输入参数或源代码转换为可运行的镜像。BuildConfig 对象是整个构建过程的定义。

Red Hat OpenShift Service on AWS 使用 Kubernetes,通过从构建镜像创建容器并将它们推送到容器镜像注册表来运行。

构建对象共享一些共同特征,包括构建的输入、完成构建过程的要求、构建过程的日志记录、发布成功构建的资源以及发布构建的最终状态。构建利用资源限制,指定对资源(如 CPU 使用率、内存使用率和构建或 Pod 执行时间)的限制。

构建的结果对象取决于用于创建它的构建器。对于 Docker 和 S2I 构建,结果对象是可运行的镜像。对于自定义构建,结果对象是构建器镜像作者指定的任何对象。

此外,流水线构建策略可用于实现复杂的流程。

  • 持续集成

  • 持续部署

Docker 构建

Red Hat OpenShift Service on AWS 使用 Buildah 从 Dockerfile 构建容器镜像。有关使用 Dockerfile 构建容器镜像的更多信息,请参阅Dockerfile 参考文档

如果使用buildArgs 数组设置 Docker 构建参数,请参阅 Dockerfile 参考文档中的了解 ARG 和 FROM 如何交互

源到镜像构建 (S2I)

源到镜像 (S2I) 是一种用于构建可重复容器镜像的工具。它通过将应用程序源注入容器镜像并组装新的镜像来生成可立即运行的镜像。新镜像包含基础镜像、构建器和已构建的源,并可立即与buildah run 命令一起使用。S2I 支持增量构建,它会重复使用以前下载的依赖项、以前构建的工件等等。

流水线构建

在 Red Hat OpenShift Service on AWS 4 中,流水线构建策略已弃用。Red Hat OpenShift Service on AWS Pipelines(基于 Tekton)提供了等效且改进的功能。

Red Hat OpenShift Service on AWS 上的 Jenkins 镜像完全受支持,用户应遵循 Jenkins 用户文档来定义其作业中的jenkinsfile 或将其存储在源代码管理系统中。

流水线构建策略允许开发人员定义 Jenkins 流水线以供 Jenkins 流水线插件使用。Red Hat OpenShift Service on AWS 可以像任何其他构建类型一样启动、监控和管理构建。

流水线工作流程定义在jenkinsfile 中,可以嵌入到构建配置中,也可以在 Git 存储库中提供并由构建配置引用。