# 定义流水线阶段,在这里我们分为打包、检查运行环境、部署三个阶段,分别为:package/check-env/deploy stages: - package - build_image - push_image # 定义所需变量 variables: FILE_NAME: gp-exp-server-1.0-SNAPSHOT.jar REGISTRY_URI: ybd2021-registry.cn-shanghai.cr.aliyuncs.com REGISTRY_NAMESPACE: production CI_REGISTRY_USER: why@1563149204495493 CI_REGISTRY_PASSWORD: youbaidi@2021 # 打包项目公共阶段 步骤1:打包项目: stage: package only: - tags tags: - maven script: - mvn clean package -Dmaven.test.skip=true -P pro artifacts: paths: - target/$FILE_NAME 步骤2:制作镜像: stage: build_image only: - tags tags: - docker-env script: - sudo docker build -t $CI_PROJECT_NAME:$CI_COMMIT_REF_NAME . - sudo docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $REGISTRY_URI - sudo docker tag $CI_PROJECT_NAME:$CI_COMMIT_REF_NAME $REGISTRY_URI/$REGISTRY_NAMESPACE/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME - sudo docker push $REGISTRY_URI/$REGISTRY_NAMESPACE/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME