docker构建与jenkins问题

docker构建与jenkins问题,docker,jenkins,jenkins-pipeline,docker-build,jenkins-docker,Docker,Jenkins,Jenkins Pipeline,Docker Build,Jenkins Docker,我正在尝试编写一个管道,首先克隆一个存储库,然后构建一个docker映像,然后将docker映像推送到docker hub。下面是我的詹金斯档案 pipeline { agent { dockerfile true } environment { APPLICATION = 'connect' ENVIRONMENT = 'dev' BUILD_VERSION = '0.9.5' MAINTAINER_NAME =

我正在尝试编写一个管道,首先克隆一个存储库,然后构建一个docker映像,然后将docker映像推送到docker hub。下面是我的詹金斯档案

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})
                    }
                }
            }
        }
    }
}
但是,当我在蓝海运行这个作业时,我得到了以下错误。


我试过用谷歌搜索,但找不到满意的答案。感谢您的帮助

将下面阶段中的
docker.build
放入
脚本中,如下所示:

   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} .")
           }
        }
    }

将下面阶段中的
docker.build
放入
脚本中,如下所示:

   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} .")
           }
        }
    }

删除每个
--build arg key=value
结尾处的所有
,但最后一个
--build arg…
尝试了@yong,但响应相同“WorkflowScript:20:第20行第17列处需要一个步骤”。删除每个
--build arg key=value
结尾处的所有
,除了最后一个
--build arg…
尝试了它@yong,但得到了相同的响应“WorkflowScript:20:在第20行第17列需要一个步骤”。谢谢,它现在工作,另一个问题,${ENVIRONMENT}是访问环境中声明的变量的正确方法吗?谢谢,它现在工作,另一个问题,是${ENVIRONMENT}访问环境中声明的VAIRABLE的正确方法?