stages: - build - deploy variables: IMAGE_NAME: "artberry-backend" IMAGE_TAG: "3.14" DOCKER_TLS_CERTDIR: "" build: stage: build image: docker:24.0.5 services: - docker:24.0.5-dind script: - docker build -t $IMAGE_NAME:$IMAGE_TAG . deploy: stage: deploy image: ubuntu:22.04 before_script: - apt-get update && apt-get install -y openssh-client - mkdir -p ~/.ssh - echo "$SSH_PRIVATE_KEY" | base64 -d > ~/.ssh/id_ed25519 - chmod 600 ~/.ssh/id_ed25519 - eval "$(ssh-agent -s)" - ssh-add ~/.ssh/id_ed25519 - ssh-keyscan -H 192.168.0.171 >> ~/.ssh/known_hosts script: - ssh arkadii@192.168.0.171 " docker stop $IMAGE_NAME || true && docker rm $IMAGE_NAME || true && docker build -t $IMAGE_NAME:$IMAGE_TAG /home/arkadii/artberry_backend && docker run -d -p 8000:8000 --name $IMAGE_NAME $IMAGE_NAME:$IMAGE_TAG "