chore(deploy): remove Dokploy, switch to native docker compose + Gitea Actions
- Remove Dokploy deploy jobs from GitHub CI workflow (test + build only) - Add .gitea/workflows/ci.yml (Gitea Actions: lint, tests, docker build verify) - Rewrite deploy.sh: set -euo pipefail, mandatory .env.<env>, --env-file, healthcheck on /api/health with log dump on failure - Delete Dokploy-specific docs (3 files), update references in README, TODO.md, architecture.md, guides, dev plan - Remove DOKPLOY_* env vars from proto/.env.local
This commit is contained in:
@@ -1,8 +1,11 @@
|
||||
#!/bin/bash
|
||||
# mozdIT Deploy Script
|
||||
# mozdIT Deploy Script — natív docker compose, Dokploy nélkül
|
||||
# Használat: ./deploy.sh [staging|production]
|
||||
# A szerveren fut (git pull + rebuild + indítás).
|
||||
|
||||
ENV=$1
|
||||
set -euo pipefail
|
||||
|
||||
ENV="$1"
|
||||
|
||||
if [ "$ENV" != "staging" ] && [ "$ENV" != "production" ]; then
|
||||
echo "Hiba: Hiányzó vagy érvénytelen környezet paraméter."
|
||||
@@ -13,21 +16,34 @@ fi
|
||||
echo "🚀 Deploy indítása: [$ENV] környezet"
|
||||
|
||||
# 1. Kód frissítése
|
||||
echo "📦 Kód frissítése a fő ágról (main)..."
|
||||
echo "📦 Kód frissítése a main ágról..."
|
||||
git pull origin main
|
||||
|
||||
# 2. .env fájl betöltése / ellenőrzése
|
||||
if [ -f ".env.$ENV" ]; then
|
||||
echo "🔑 Környezeti változók betöltése (.env.$ENV)..."
|
||||
export $(grep -v '^#' .env.$ENV | xargs)
|
||||
else
|
||||
echo "⚠️ Figyelmeztetés: .env.$ENV fájl nem található, alapértelmezett értékek használata."
|
||||
# 2. Környezeti változók (.env.<env>)
|
||||
ENV_FILE=".env.${ENV}"
|
||||
if [ ! -f "$ENV_FILE" ]; then
|
||||
echo "❌ Hiba: $ENV_FILE fájl nem található."
|
||||
echo " Másold le a .env.example fájlt $ENV_FILE néven, és töltsd ki."
|
||||
exit 1
|
||||
fi
|
||||
echo "🔑 Környezeti változók betöltése ($ENV_FILE)..."
|
||||
|
||||
# 3. Docker konténerek újraépítése és indítása
|
||||
echo "🐳 Docker konténerek buildelése és indítása Zero-Downtime megközelítéssel..."
|
||||
docker compose -f docker-compose.prod.yml up --build -d
|
||||
echo "🐳 Build és indítás..."
|
||||
docker compose --env-file "$ENV_FILE" -f docker-compose.prod.yml up --build -d
|
||||
|
||||
# 4. Ellenőrzés
|
||||
echo "✅ Deploy sikeresen befejeződött!"
|
||||
echo "📄 Logok megtekintése: docker compose -f docker-compose.prod.yml logs -f app"
|
||||
# 4. Healthcheck
|
||||
echo "⏳ Healthcheck (max 60s)..."
|
||||
HEALTH_URL="http://localhost:${APP_PORT:-8080}/api/health"
|
||||
for i in $(seq 1 30); do
|
||||
if curl -sf "$HEALTH_URL" > /dev/null 2>&1; then
|
||||
echo "✅ Healthcheck OK: $HEALTH_URL"
|
||||
echo "✅ Deploy sikeres: [$ENV]"
|
||||
exit 0
|
||||
fi
|
||||
sleep 2
|
||||
done
|
||||
|
||||
echo "❌ Healthcheck sikertelen: $HEALTH_URL"
|
||||
docker compose -f docker-compose.prod.yml logs app --tail 50
|
||||
exit 1
|
||||
|
||||
Reference in New Issue
Block a user