codigo0/scripts/deploy-lab.sh

69 lines
2.3 KiB
Bash
Raw Normal View History

#!/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 ""