Add deploy.sh

This commit is contained in:
2026-02-07 23:24:04 +03:00
parent 3f80dab132
commit e23be1935b

38
deploy/my-vpn/deploy.sh Normal file
View File

@@ -0,0 +1,38 @@
#!/usr/bin/env bash
set -euo pipefail
# BLOCK 1: config + sanity checks
APP_DIR="/srv/proxyfier"
REPO_URL="ssh://git@git.ornot.ru:2223/alexanderOrNot/proxyfier.git"
BRANCH="main"
IMAGE="proxyfier:latest"
CONTAINER="proxyfier"
PORT="9000"
command -v git >/dev/null 2>&1 || { echo "git not found"; exit 1; }
command -v docker >/dev/null 2>&1 || { echo "docker not found"; exit 1; }
# BLOCK 2: get/update source code
if [[ ! -d "$APP_DIR/.git" ]]; then
mkdir -p "$APP_DIR"
git clone "$REPO_URL" "$APP_DIR"
fi
cd "$APP_DIR"
git fetch --all
git reset --hard "origin/${BRANCH}"
# BLOCK 3: build image
docker build -t "$IMAGE" .
# BLOCK 4: run container
if docker ps -a --format '{{.Names}}' | grep -q "^${CONTAINER}$"; then
docker rm -f "$CONTAINER"
fi
docker run -d --name "$CONTAINER" \
--restart unless-stopped \
-p "${PORT}:${PORT}" \
-v "$APP_DIR/config.yaml:/app/config.yaml:ro" \
-e PROXYFIER_CONFIG=/app/config.yaml \
"$IMAGE"
echo "OK: deployed ${CONTAINER} on port ${PORT}"