#!/bin/sh # Runs a Compose deployment on the target host. Invoked remotely via SSH # after compose.yaml, release.env and secrets.decrypted.env have been # transferred to the same directory as this script. # # Usage: deploy-compose set -e REGISTRY="$1" ZOT_USERNAME="$2" ZOT_PASSWORD="$3" cd "$(dirname "$0")" set -a . ./release.env set +a echo "$ZOT_PASSWORD" | docker login "$REGISTRY" -u "$ZOT_USERNAME" --password-stdin docker compose \ --project-directory . \ -f compose.yaml \ --env-file secrets.decrypted.env \ pull docker compose \ --project-directory . \ -f compose.yaml \ --env-file secrets.decrypted.env \ up -d --remove-orphans docker logout "$REGISTRY"