stages: - build variables: DOCKER_DRIVER: overlay2 DOCKER_TLS_CERTDIR: "" build: stage: build image: docker:20.10.12 services: - name: docker:20.10.12-dind command: - "--registry-mirror=https://docker.210.30.200.148.nip.io/" before_script: - docker info - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY" script: - | # Git Tag 流水线使用版本号;main 分支流水线使用短提交号,避免生成过长的镜像标签。 if [ -n "$CI_COMMIT_TAG" ]; then IMAGE_TAG="$CI_COMMIT_TAG" else IMAGE_TAG="$CI_COMMIT_SHORT_SHA" fi docker build -t "$CI_REGISTRY_IMAGE:$IMAGE_TAG" . docker tag "$CI_REGISTRY_IMAGE:$IMAGE_TAG" "$CI_REGISTRY_IMAGE:latest" docker push "$CI_REGISTRY_IMAGE:$IMAGE_TAG" docker push "$CI_REGISTRY_IMAGE:latest" only: - main - tags