69 lines
2.3 KiB
Bash
69 lines
2.3 KiB
Bash
|
|
#!/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 ""
|