# This file is a template, and might need editing before it works on your project. docker-build-main: # Official docker image, develop tag image: docker:latest stage: build services: - docker:dind before_script: - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY script: - docker build --pull -t "$CI_REGISTRY_IMAGE:develop" . - docker push "$CI_REGISTRY_IMAGE:develop" rules: - if: $CI_COMMIT_BRANCH != "main" when: never - if: $CI_COMMIT_TAG == null when: on_success docker-build-tag: # Official docker image, tagged release (also updates latest) image: docker:latest stage: build services: - docker:dind before_script: - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY script: - docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" -t "$CI_REGISTRY_IMAGE" . - docker push --all-tags "$CI_REGISTRY_IMAGE" rules: - if: $CI_COMMIT_BRANCH != "main" when: never - if: $CI_COMMIT_TAG when: on_success