build file
Some checks failed
test/timeline-server/pipeline/head There was a failure building this commit
Some checks failed
test/timeline-server/pipeline/head There was a failure building this commit
This commit is contained in:
32
Jenkinsfile
vendored
32
Jenkinsfile
vendored
@@ -10,6 +10,7 @@ pipeline {
|
|||||||
REGISTRY = 'timeline-registry:5000'
|
REGISTRY = 'timeline-registry:5000'
|
||||||
PROJECT_NAME = 'timeline-server'
|
PROJECT_NAME = 'timeline-server'
|
||||||
DOCKER_REGISTRY = 'timeline-registry:5000'
|
DOCKER_REGISTRY = 'timeline-registry:5000'
|
||||||
|
DOCKER_BUILDKIT = '1' // 启用 BuildKit
|
||||||
}
|
}
|
||||||
|
|
||||||
parameters {
|
parameters {
|
||||||
@@ -93,25 +94,28 @@ pipeline {
|
|||||||
stage('Build Docker Images') {
|
stage('Build Docker Images') {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
def services = ['gateway', 'user', 'story', 'file']
|
// 启用 Docker BuildKit
|
||||||
def imageTags = [:]
|
withEnv(['DOCKER_BUILDKIT=1']) {
|
||||||
|
def services = ['gateway', 'user', 'story', 'file']
|
||||||
|
def imageTags = [:]
|
||||||
|
|
||||||
for (service in services) {
|
for (service in services) {
|
||||||
def serviceDir = "timeline-${service}-service"
|
def serviceDir = "timeline-${service}-service"
|
||||||
def imageName = "${REGISTRY}/timeline-${service}-service:${BUILD_NUMBER}"
|
def imageName = "${REGISTRY}/timeline-${service}-service:${BUILD_NUMBER}"
|
||||||
def latestImageName = "${REGISTRY}/timeline-${service}-service:latest"
|
def latestImageName = "${REGISTRY}/timeline-${service}-service:latest"
|
||||||
|
|
||||||
// 检查Dockerfile是否存在,如果不存在则创建
|
// 检查Dockerfile是否存在,如果不存在则创建
|
||||||
if (!fileExists("${serviceDir}/Dockerfile")) {
|
if (!fileExists("${serviceDir}/Dockerfile")) {
|
||||||
writeFile file: "${serviceDir}/Dockerfile", text: getDockerfileContent(serviceDir)
|
writeFile file: "${serviceDir}/Dockerfile", text: getDockerfileContent(serviceDir)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 构建镜像,使用 BuildKit
|
||||||
|
sh "docker build --platform linux/amd64 -t ${imageName} -t ${latestImageName} ${serviceDir}/."
|
||||||
|
imageTags[service] = imageName
|
||||||
}
|
}
|
||||||
|
|
||||||
// 构建镜像
|
env.IMAGE_TAGS = writeJSON returnText: imageTags
|
||||||
sh "docker build -t ${imageName} -t ${latestImageName} ${serviceDir}/."
|
|
||||||
imageTags[service] = imageName
|
|
||||||
}
|
}
|
||||||
|
|
||||||
env.IMAGE_TAGS = writeJSON returnText: imageTags
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user