Sho*_*bal 2 jenkins docker jenkins-docker docker-build jenkins-pipeline
我正在尝试编写一个 Jenkins 管道,它首先克隆 git 存储库,然后构建 Docker 映像,最后将映像推送到 Docker Hub。我的Jenkinsfile是:
pipeline {
agent { dockerfile true }
environment {
APPLICATION = 'connect'
ENVIRONMENT = 'dev'
BUILD_VERSION = '0.9.5'
MAINTAINER_NAME = 'Shoaib'
MAINTAINER_EMAIL = 'shoaib@email.com'
BUILD_DOCKER_REPO = repo1/images'
DOCKER_IMAGE_TAG = 'repo1/images:connect_dev_0.9.5'
}
stages {
stage('clone repository') {
steps {
checkout Jenkins-Integration
}
}
stage('Build Image') {
steps {
image = docker.build("-f Dockerfile.local", "--no-cache", "-t ${DOCKER_IMAGE_TAG}", "--build-arg envior=${ENVIRONMENT} .", "--build-arg build_version=${BUILD_VERSION} .", "--build-arg maintainer_name=${MAINTAINER_NAME} .", "--build-arg maintainaer_email=${MAINTAINER_EMAIL} .")
}
}
stage('Deploy') {
steps {
script {
docker.withRegistry('https://registry.example.com', 'docker-hub-credentials') {
image.push(${DOCKER_IMAGE_TAG})
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,当我运行此作业(在 Blue Ocean 中)时,我收到以下错误:
我尝试过谷歌搜索,但找不到满意的答案。任何帮助将不胜感激。
将docker.build下面的阶段放入 a 中,script如下所示:
stage('Build Image') {
steps {
script {
def image = docker.build(
"-f Dockerfile.local",
"--no-cache",
"-t ${DOCKER_IMAGE_TAG}",
"--build-arg envior=${ENVIRONMENT}",
"--build-arg build_version=${BUILD_VERSION}",
"--build-arg maintainer_name=${MAINTAINER_NAME}",
"--build-arg maintainaer_email=${MAINTAINER_EMAIL} .")
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7030 次 |
| 最近记录: |