4.2.3.5. 通过 Source-To-Image 自定义 Jenkins 镜像
要自定义官方 OpenShift Container Platform Jenkins 镜像,有两个选项:
- 使用 Docker 层。
- 使用镜像作为 Source-To-Image 构建器,如下所述。
您可使用 S2I 来复制自定义 Jenkins 任务定义,添加其它插件,或使用您自己的自定义配置来替换所提供的 config.xml 文件。
要在 Jenkins 镜像中包括您的修改,您需要具有以下目录结构的 Git 存储库:
- plugins
- 该目录包含要复制到 Jenkins 中的二进制 Jenkins 插件。
- plugins.txt
- 此文件列出了您要安装的插件:
pluginId:pluginVersion
- configuration/jobs
- 该目录包含 Jenkins 任务定义。
- configuration/config.xml
- 该文件包含您的自定义 Jenkins 配置。
configuration/ 目录的内容将复制到 /var/lib/jenkins/ 目录中,以便还可以包含其他文件,比如 credentials.xml。
以下是在 OpenShift Container Platform 中自定义 Jenkins 镜像的示例构建配置:
apiVersion: v1 kind: BuildConfig metadata: name: custom-jenkins-build spec: source: 1 git: uri: https://github.com/custom/repository type: Git strategy: 2 sourceStrategy: from: kind: ImageStreamTag name: jenkins:latest namespace: openshift type: Source output: 3 to: kind: ImageStreamTag name: custom-jenkins:latest