diff --git a/deploy-citadel.sh b/deploy-citadel.sh deleted file mode 100755 index 482a313..0000000 --- a/deploy-citadel.sh +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -HOST="${BTCDATA_DEPLOY_HOST:-citadel}" -APP_DIR="${BTCDATA_DEPLOY_DIR:-/home/pmp/apps/btcdata}" -IMAGE_NAME="${BTCDATA_IMAGE_NAME:-$(basename "$APP_DIR")-btcdata:latest}" -PLATFORM="${BTCDATA_PLATFORM:-}" -NETWORK="${BTCDATA_NETWORK:-btc-network}" -FILES=(docker-compose.yml .env) - -if [[ -z "$PLATFORM" ]]; then - remote_arch="$(ssh "$HOST" uname -m)" - case "$remote_arch" in - x86_64 | amd64) PLATFORM="linux/amd64" ;; - aarch64 | arm64) PLATFORM="linux/arm64" ;; - *) - echo "Unsupported target architecture: $remote_arch" >&2 - echo "Set BTCDATA_PLATFORM manually, e.g. BTCDATA_PLATFORM=linux/amd64" >&2 - exit 1 - ;; - esac -fi - -for file in "${FILES[@]}"; do - if [[ ! -f "$file" ]]; then - echo "Missing required file: $file" >&2 - exit 1 - fi -done - -echo "Building $IMAGE_NAME locally for $PLATFORM..." -docker build --platform "$PLATFORM" -t "$IMAGE_NAME" . - -echo "Preparing $APP_DIR on $HOST..." -ssh "$HOST" "mkdir -p '$APP_DIR'" - -echo "Ensuring external network $NETWORK exists on $HOST..." -ssh "$HOST" "docker network inspect '$NETWORK' >/dev/null 2>&1 || docker network create '$NETWORK'" - -echo "Copying docker-compose.yml and .env to $HOST:$APP_DIR..." -scp "${FILES[@]}" "$HOST:$APP_DIR/" - -echo "Copying Docker image $IMAGE_NAME to $HOST..." -docker save "$IMAGE_NAME" | ssh "$HOST" docker load - -echo "Starting docker compose on $HOST in $APP_DIR..." -ssh "$HOST" "cd '$APP_DIR' && docker compose up -d --no-build"