GitLab 저장소의 Jenkinsfile 을 읽어 Docker 이미지를 빌드하는 파이프라인 잡을 만든다. 선행 작업은 Jenkins Gitlab 연동 이다. 2025년 테스트 됨.
Manage Jenkins → Plugins 에서 다음을 설치한다.
docker-workflow) — Jenkinsfile 에서 docker.build() 를 쓰게 한다New Item → Pipeline 으로 잡을 만든다.

Pipeline 절에서 Definition 을 Pipeline script from SCM 으로 두고 SCM 은 Git, Repository URL 과 GitLab 자격증명, 브랜치, Script Path(Jenkinsfile)를 넣는다.

pipeline {
agent any
environment {
REGISTRY = "harbor.example.com"
IMAGE = "project/app"
IMAGE_TAG = "${BUILD_NUMBER}"
}
stages {
stage('Checkout') {
steps { checkout scm }
}
stage('Build') {
steps {
sh "docker build -t ${REGISTRY}/${IMAGE}:${IMAGE_TAG} ."
}
}
stage('Push') {
steps {
withCredentials([usernamePassword(credentialsId: 'harbor', usernameVariable: 'U', passwordVariable: 'P')]) {
sh "docker login ${REGISTRY} -u \$U -p \$P"
sh "docker push ${REGISTRY}/${IMAGE}:${IMAGE_TAG}"
sh "docker logout ${REGISTRY}"
}
}
}
}
}
빌드 뒤 Helm 으로 배포까지 잇는 예는 SCP Kubernetes 빌드/배포 파이프라인 생성 에 있다.