#!/usr/bin/env bash # Script de despliegue para LAB (mismo servidor que TalentOS, puerto distinto) # Uso: ./scripts/deploy-lab.sh # # Puerto: APP_PORT en .env o 8608 por defecto (no conflicto con TalentOS:3000) set -e # Detectar comando docker compose correcto if command -v docker &> /dev/null && docker compose version &> /dev/null 2>&1; then DOCKER_COMPOSE_CMD="docker compose" elif command -v docker-compose &> /dev/null; then DOCKER_COMPOSE_CMD="docker-compose" else echo "❌ Error: docker compose o docker-compose no encontrado" echo " Instala Docker Compose:" echo " - Plugin: apt install docker-compose-plugin" echo " - Standalone: curl -L \"https://github.com/docker/compose/releases/download/v2.24.0/docker-compose-\$(uname -s)-\$(uname -m)\" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose" exit 1 fi # Puerto expuesto en host (por defecto 8608, no choca con TalentOS:3000 ni guia-tes local:8607) APP_PORT="${APP_PORT:-8608}" echo "🚀 Despliegue EMERGES TES en LAB" echo "==========================================================================" echo "" # Verificar que estamos en el directorio correcto if [ ! -f "docker-compose.lab.yml" ]; then echo "❌ Error: No se encontró docker-compose.lab.yml" echo " Asegúrate de estar en el directorio raíz del proyecto" exit 1 fi # Crear .env con APP_PORT si no existe if [ ! -f ".env" ]; then echo "APP_PORT=$APP_PORT" > .env echo "✅ Creado .env con APP_PORT=$APP_PORT" fi echo "" echo "🔨 Construyendo imagen (build --no-cache)..." $DOCKER_COMPOSE_CMD -f docker-compose.lab.yml build --no-cache echo "" echo "🚀 Iniciando aplicación..." $DOCKER_COMPOSE_CMD -f docker-compose.lab.yml up -d echo "" echo "⏳ Esperando a que la aplicación esté lista..." sleep 5 echo "" echo "📋 Estado de los servicios:" $DOCKER_COMPOSE_CMD -f docker-compose.lab.yml ps echo "" echo "✅ Despliegue completado" echo "" echo "🌐 Acceso:" echo " URL: http://207.180.226.141:$APP_PORT" echo "" echo "📋 Comandos útiles:" echo " Ver logs: $DOCKER_COMPOSE_CMD -f docker-compose.lab.yml logs -f emerges-tes" echo " Reiniciar: $DOCKER_COMPOSE_CMD -f docker-compose.lab.yml restart emerges-tes" echo " Detener: $DOCKER_COMPOSE_CMD -f docker-compose.lab.yml down" echo ""