stages: - build - deploy build: stage: build tags: - "srv100" only: - "auto-deploy" script: - export PROJECT='business-webapi' - export VERSION='v1.0.0' - export TAG=${VERSION}'.'$(date +%y%m%d%H%M) - export LFS_JAR=${PROJECT}'-1.0.0.jar' # ${VERSION}'.'$(date -d '5 minutes ago' +'%y%m%d%H%M') - export IMAGE_NAME='registry.cn-hangzhou.aliyuncs.com/ggcimages/hzhs-deploy:'${PROJECT}'--' - (sh -c "echo 'PROJECT='${PROJECT}', TAG='${TAG}', IMAGE_NAME='${IMAGE_NAME}") # 通过 docker compose 编译和构建容器镜像 - chmod +x .gitlab-ci-help.sh && sh ./.gitlab-ci-help.sh prebuild - (sh -c "docker compose -f docker-compose.yml -p ${PROJECT} build") || echo '构建容器失败!'${PWD} # 通过 docker compose 停止在运行容器 - (sh -c "docker compose -f docker-compose.yml -p ${PROJECT} down ") || echo '移除容器失败!' # 通过 docker compose 重启和发布容器 #- (sh -c "docker compose -f docker-compose.yml -p ${PROJECT} up -d ") || (echo '启动容器失败!' && exit -1) #- (sh ./.gitlab-ci-help.sh postup) # 发布容器镜像到阿里云 #- ( (sh -c "docker push ${IMAGE_NAME}${TAG}") || echo '推送镜像到阿里云失败!' ) & echo '后台推送镜像到阿里云 registry !结束构建。'${PWD} - export LOCAL_REGISTRY_NAME='localhost:5001/'${PROJECT}':'${TAG} - docker tag ${IMAGE_NAME}${TAG} ${LOCAL_REGISTRY_NAME} - export K8S_deployment_NAME='business-webapi' - (sh -c "docker push ${LOCAL_REGISTRY_NAME} || echo '推送镜像到本地 registry 失败!'") - (sh ./.gitlab-ci-help.sh k8s) # 提示结束构建 - echo '结束构建。'${PWD} #artifacts: #paths: #- target/*.jar