4.2.3.5. S2I(Source-to-Image)를 통해 Jenkins 이미지 사용자 정의
공식 OpenShift Container Platform Jenkins 이미지를 사용자 정의하려면 다음 두 가지 옵션이 있습니다.
- Docker 계층 지정 사용.
- 이 이미지를 여기에 설명된 S2I(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