Jenkins 设置节点docker打包

Pipeline script

pipeline {
    agent{
        label "win52"
        }
     options {
        disableConcurrentBuilds()
    }
    stages {
        stage('pull code') {
            steps {
                echo '拉取代码'
                checkout([$class: 'GitSCM', branches: [[name: '*/${branch}']], extensions: [], userRemoteConfigs: [[credentialsId: 'yangcheng', url: 'git://192.168.31.246/mes/mes2.0.git']]])
            }
        }
         stage('code build') {
            steps {
                echo '编译后端'
                bat '''cd "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net"
                dotnet publish VOL.sln -o Publish
                dotnet publish SmarteeMES.Service.sln -o Service'''
                
                echo '编译前端'
                bat '''cd "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\View"
                cnpm install'''
                bat '''cd "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\View"
                build.bat'''
                bat 'rmdir /s /q "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0\\wwwroot"'
                bat 'mkdir "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0\\wwwroot"'
                bat 'xcopy /E /Y "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\View\\dist" "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0\\wwwroot"'
           
               
            }
        }
        stage('docker build') {
            environment{
                currentDate = new Date().format('yyyyMMdd')
                WebImageTag = "192.168.31.187:5555/mes/mes2.web:v${imageVersion}"
                ServiceImageTag = "192.168.31.187:5555/mes/smarteemes.service:v${imageVersion}"
            }
            steps {
                echo 'docker打包'
               
                 script {
                     if(env.imageVersion==""){
                         WebImageTag="192.168.31.187:5555/mes/mes2.web:v${currentDate}_${BUILD_NUMBER}"
                         ServiceImageTag = "192.168.31.187:5555/mes/smarteemes.service:v${currentDate}_${BUILD_NUMBER}"
                     }
                    echo "Web版本:${WebImageTag}"
                    echo "Service版本:${ServiceImageTag}"
                 }
                 dir('D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0'){
                    bat "docker build -t ${WebImageTag}.j ."
                    bat "docker login http://192.168.31.187:5555 -u admin -p MES2021"
                    bat "docker push ${WebImageTag}.j"
                 }
                 dir('D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\SmarteeMES.Service\\bin\\Debug\\net5.0'){
                    bat "docker build -t ${ServiceImageTag}.j ."
                    bat "docker login http://192.168.31.187:5555 -u admin -p MES2021"
                    bat "docker push ${ServiceImageTag}.j"
                 }
            }
        }
    }
}

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部