.docker-build-container: image: registry.durp.info/docker:20.10.17 variables: DOCKER_DRIVER: overlay2 DOCKER_TLS_CERTDIR: "" DOCKER_HOST: tcp://127.0.0.1:2375/ services: - name: docker:dind entrypoint: ["dockerd-entrypoint.sh", "--tls=false"] script: # Begin of docker-login.sh - | #login to docker docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY/$CI_PROJECT_PATH # End of docker-login.sh # Begin of docker-build.sh - | #Build Docker Container docker build -t $CI_REGISTRY/$CI_PROJECT_PATH:$VERSION -t $CI_REGISTRY/$CI_PROJECT_PATH:latest . docker push "$CI_REGISTRY/$CI_PROJECT_PATH:latest" docker push "$CI_REGISTRY/$CI_PROJECT_PATH:$VERSION" # End of docker-build.sh .docker_build: image: registry.durp.info/docker:20.10.17 variables: DOCKER_DRIVER: overlay2 DOCKER_TLS_CERTDIR: "" DOCKER_HOST: tcp://127.0.0.1:2375/ services: - name: docker:dind entrypoint: ["dockerd-entrypoint.sh", "--tls=false"] script: # Begin of build.sh - | #Build Docker Container mkdir $CI_PROJECT_DIR/packages containername=$(echo "$PROJECT_NAME" | awk '{print tolower($0)}') docker build -t $containername . docker save -o $CI_PROJECT_DIR/packages/$containername.$VERSION.tar.gz $containername # End of build.sh .docker_push_gitlab: image: registry.durp.info/docker:20.10.17 variables: DOCKER_DRIVER: overlay2 DOCKER_TLS_CERTDIR: "" DOCKER_HOST: tcp://127.0.0.1:2375/ services: - name: docker:dind entrypoint: ["dockerd-entrypoint.sh", "--tls=false"] script: # Begin of login.sh - | #Docker Login docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY/$CI_PROJECT_PATH # End of login.sh # Begin of push-gitlab.sh - "#Push container to gitlab\ncontainername=$(echo \"$PROJECT_NAME\" | awk '{print tolower($0)}')\nif [[ \"$VERSION\" =~ ^([0-9]+(\\.[0-9]+)*)$ ]] \nthen\n tag=\"latest\" \nelse\n tag=\"dev\"\nfi\ndocker import $CI_PROJECT_DIR/packages/$containername.$VERSION.tar.gz $CI_REGISTRY/$CI_PROJECT_PATH:$VERSION\ndocker import $CI_PROJECT_DIR/packages/$containername.$VERSION.tar.gz $CI_REGISTRY/$CI_PROJECT_PATH:$tag\ndocker push \"$CI_REGISTRY/$CI_PROJECT_PATH:$VERSION\"\ndocker push \"$CI_REGISTRY/$CI_PROJECT_PATH:$tag\"\n" # End of push-gitlab.sh