#!/bin/bash # Configurações PROJECT_NAME="rede5-core" NETWORK_NAME="core-network" DB_CONTAINER="ghj-db-dev" # Usando o banco existente conforme solicitado ZITADEL_IMAGE="ghcr.io/zitadel/zitadel:v2.42.2" DASHBOARD_IMAGE="rede5-dashboard:latest" MASTERKEY="MasterkeyNeedsToHave32Characters" echo "🚀 Iniciando Deploy do Core ($PROJECT_NAME)" # 1. Criar rede se não existir docker network inspect $NETWORK_NAME >/dev/null 2>&1 || \ docker network create $NETWORK_NAME # 2. Conectar o banco existente à rede (se ainda não estiver) docker network connect $NETWORK_NAME $DB_CONTAINER 2>/dev/null || true # 3. Setup do Zitadel (Passo inicial) echo "⚙️ Executando Setup do Zitadel..." docker run --rm \ --network $NETWORK_NAME \ -v /root/zitadel-config.yaml:/zitadel-config.yaml:ro \ $ZITADEL_IMAGE \ setup --masterkey "$MASTERKEY" --config /zitadel-config.yaml # 4. Iniciar Zitadel echo "🔐 Iniciando Zitadel..." docker stop zitadel 2>/dev/null || true docker rm zitadel 2>/dev/null || true docker run -d \ --name zitadel \ --network $NETWORK_NAME \ -p 8080:8080 \ -v /root/zitadel-config.yaml:/zitadel-config.yaml:ro \ -e ZITADEL_MASTERKEY="$MASTERKEY" \ $ZITADEL_IMAGE \ start-from-setup --masterkey "$MASTERKEY" --config /zitadel-config.yaml # 5. Build do Dashboard echo "🏗️ Building Dashboard Image..." cd dashboard docker build -t $DASHBOARD_IMAGE . cd .. # 6. Iniciar Dashboard echo "🖥️ Iniciando Dashboard..." docker stop core-dashboard 2>/dev/null || true docker rm core-dashboard 2>/dev/null || true docker run -d \ --name core-dashboard \ --network $NETWORK_NAME \ -p 3005:3000 \ --env-file dashboard/.env.local \ $DASHBOARD_IMAGE echo "✅ Deploy Concluído!" echo "Auth: http://auth.rede5.com.br (Porta 8080)" echo "Dashboard: http://dashboard.rede5.com.br (Porta 3005)"