| New file |
| | |
| | | pipeline { |
| | | agent any |
| | | //变量定义 |
| | | environment { |
| | | CREDENTIALSID = 'smartcook' |
| | | GIT_URL = 'http://gitlab.iotmars.com/backend/smartcook/smartcook.git' |
| | | BRANCH = 'dev' |
| | | ALIYUN_NAMESPACE = 'wecook' |
| | | ALIYUN_REPOSITORY = 'menu-center-dev' |
| | | IMAGE_VERSION = '0.0.1-SNAPSHOT' |
| | | DOCKER_CONTAINER_NAME = 'smartcook' |
| | | REMOTE_SERVER_IP = '192.168.32.128' |
| | | REMOTE_SERVER_NAME = 'localhost.localdomain' |
| | | REMOTE_SERVER_CREDENTIALSID = 'server_128' |
| | | REMOTE_REPOSITORY_CREDENTIALSID = 'hxr_aliyun' |
| | | SERVER_PORT = '8002' |
| | | EMAIL = '792965772@qq.com' |
| | | REGISTRY = 'registry.cn-hangzhou.aliyuncs.com' |
| | | DOCKERHUB_NAMESPACE = 'arsn' |
| | | } |
| | | |
| | | stages { |
| | | //1.拉取源码 |
| | | stage('Git Checkout'){ |
| | | steps { |
| | | git branch: 'master', credentialsId: 'gitblit', url: 'http://192.168.0.105:10010/r/zhba_management_w.git' |
| | | } |
| | | } |
| | | //2.编译成jar包 |
| | | stage('Maven Build') { |
| | | steps { |
| | | sh 'ls' |
| | | sh 'mvn clean package -Dmaven.test.skip=true' |
| | | sh 'ls target/' |
| | | } |
| | | } |
| | | //3.构建镜像 |
| | | stage('Build and Push Image'){ |
| | | steps{ |
| | | sh 'docker build -f Dockerfile -t zhbaw:latest .' |
| | | } |
| | | } |
| | | //4.拉取镜像并启动 |
| | | stage('推送镜像'){ |
| | | steps{ |
| | | script{ |
| | | withCredentials([usernamePassword(credentialsId: 'aliyun', passwordVariable: 'password', usernameVariable: 'username')]) { |
| | | sh 'echo "$password" | docker login $REGISTRY -u "$username" --password-stdin' |
| | | sh 'docker tag zhbaw:latest $REGISTRY/$DOCKERHUB_NAMESPACE/zhbaw:SNAPSHOT-$BUILD_NUMBER' |
| | | sh 'docker push $REGISTRY/$DOCKERHUB_NAMESPACE/zhbaw:SNAPSHOT-$BUILD_NUMBER' |
| | | } |
| | | } |
| | | } |
| | | } |
| | | //5.部署 |
| | | stage('deploy to dev') { |
| | | steps { |
| | | input '是否部署?' |
| | | sh 'docker-compose up -d' |
| | | } |
| | | } |
| | | } |
| | | } |