pozycja stopki fix
This commit is contained in:
56
deploy.sh
Executable file
56
deploy.sh
Executable file
@@ -0,0 +1,56 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# === Konfiguracja (możesz nadpisać zmiennymi środowiskowymi) ===
|
||||||
|
REPO_DIR="${REPO_DIR:-$(pwd)}"
|
||||||
|
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}" # albo compose.yaml
|
||||||
|
GIT_REMOTE="${GIT_REMOTE:-origin}"
|
||||||
|
GIT_BRANCH="${GIT_BRANCH:-$(git -C "$REPO_DIR" rev-parse --abbrev-ref HEAD 2>/dev/null || echo main)}"
|
||||||
|
|
||||||
|
# Jeśli chcesz uruchomić tylko wybrane serwisy, podaj je po komendzie,
|
||||||
|
# np.: ./deploy.sh web api
|
||||||
|
SERVICES=("$@")
|
||||||
|
|
||||||
|
log() { printf "\n==> %s\n" "$*"; }
|
||||||
|
|
||||||
|
# --- Kontrole wstępne ---
|
||||||
|
command -v git >/dev/null || { echo "Brak 'git' w PATH"; exit 1; }
|
||||||
|
command -v docker >/dev/null || { echo "Brak 'docker' w PATH"; exit 1; }
|
||||||
|
|
||||||
|
if ! docker compose version >/dev/null 2>&1; then
|
||||||
|
echo "Wymagany jest 'docker compose' (plugin), nie stary 'docker-compose'."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! -f "$REPO_DIR/$COMPOSE_FILE" ]]; then
|
||||||
|
# Spróbuj alternatywnej nazwy
|
||||||
|
if [[ -f "$REPO_DIR/compose.yaml" ]]; then
|
||||||
|
COMPOSE_FILE="compose.yaml"
|
||||||
|
else
|
||||||
|
echo "Nie znaleziono pliku Compose w: $REPO_DIR/$COMPOSE_FILE"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# --- Praca w katalogu repo ---
|
||||||
|
cd "$REPO_DIR"
|
||||||
|
|
||||||
|
# --- Aktualizacja kodu ---
|
||||||
|
log "Aktualizacja repo: git pull --ff-only ($GIT_REMOTE/$GIT_BRANCH)"
|
||||||
|
git fetch --prune "$GIT_REMOTE"
|
||||||
|
git checkout "$GIT_BRANCH" >/dev/null 2>&1 || true
|
||||||
|
git pull --ff-only "$GIT_REMOTE" "$GIT_BRANCH"
|
||||||
|
|
||||||
|
# --- Zatrzymanie i usunięcie bieżącego stacka ---
|
||||||
|
log "Docker Compose DOWN (usuwanie kontenerów i osieroconych usług)"
|
||||||
|
docker compose -f "$COMPOSE_FILE" down --remove-orphans
|
||||||
|
|
||||||
|
# --- Budowanie i uruchamianie bez restartu zależności ---
|
||||||
|
log "Docker Compose UP (build bez deps) dla: ${SERVICES[*]:-(wszystkie)}"
|
||||||
|
if [[ ${#SERVICES[@]} -gt 0 ]]; then
|
||||||
|
docker compose -f "$COMPOSE_FILE" up -d --no-deps --build "${SERVICES[@]}"
|
||||||
|
else
|
||||||
|
docker compose -f "$COMPOSE_FILE" up -d --no-deps --build
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "Gotowe ✅"
|
Reference in New Issue
Block a user