- Complete ngrok setup with automated scripts - One-click internet exposure with setup-complete.sh - Dynamic URL management and Docker reconfiguration - Multi-tunnel configuration for free ngrok accounts - Comprehensive documentation and verification tools - Organized in dedicated ngrok/ folder for easy management
3.9 KiB
3.9 KiB
🌐 SnatchGame - Ngrok Internet Exposure
Esta carpeta contiene todo lo necesario para exponer SnatchGame a internet usando ngrok.
🚀 Uso Rápido
Método Fácil (Recomendado):
cd ngrok
./setup-complete.sh
¡Eso es todo! El script hará todo automáticamente y te dará las URLs públicas.
📁 Archivos Incluidos
Scripts Principales:
setup-complete.sh- 🎯 Script principal - Hace todo automáticamentemanage-tunnels.sh- 🛠️ Gestión de túneles (start/stop/status/urls)update-ngrok-urls.sh- 🔄 Actualiza URLs de Docker con ngrokdocker-compose.ngrok.yml- 🐳 Configuración Docker para ngrok
Scripts Adicionales:
setup-ngrok.sh- Setup inicial con configuración manualexpose-ngrok.sh- Script simple para exponer servicios
🔧 Métodos de Uso
1. Automático (Más Fácil):
./setup-complete.sh
- ✅ Hace todo en orden correcto
- ✅ URLs dinámicas automáticas
- ✅ Verificación completa
- ✅ Mantiene túneles activos
2. Manual (Más Control):
# Ver estado
./manage-tunnels.sh status
# Iniciar túneles
./manage-tunnels.sh start
# Ver URLs actuales
./manage-tunnels.sh urls
# Parar túneles
./manage-tunnels.sh stop
# Reiniciar todo
./manage-tunnels.sh restart
3. Solo actualizar URLs:
./update-ngrok-urls.sh
📋 Prerrequisitos
1. Cuenta ngrok (Gratis):
- Regístrate en: https://dashboard.ngrok.com/signup
- Obtén tu authtoken: https://dashboard.ngrok.com/get-started/your-authtoken
- Configúralo una vez:
/tmp/ngrok config add-authtoken TU_TOKEN_AQUI
2. Docker funcionando:
- Los servicios de SnatchGame deben estar builds
- Docker compose debe estar disponible
🌐 URLs que obtendrás
Después de ejecutar el setup obtendrás 3 URLs públicas:
- 🎮 CLIENTE - Para que los jugadores se conecten
- 📊 ADMIN - Para administrar el juego
- 🎯 SERVIDOR - API del juego (configurado automáticamente)
🛠️ Solución de Problemas
Error: "authentication failed"
# Configura tu authtoken de ngrok
/tmp/ngrok config add-authtoken TU_TOKEN
Error: "port already in use"
# Limpia procesos anteriores
pkill -f ngrok
docker compose down
URLs no funcionan
# Reinicia todo el setup
./manage-tunnels.sh restart
Docker no responde
# Verifica que los servicios estén construidos
cd .. && docker compose ps
📊 Flujo de Funcionamiento
1. 🛑 Limpia procesos anteriores
↓
2. 🐳 Inicia servicios Docker (localhost)
↓
3. 🌐 Crea túneles ngrok → Obtiene URLs públicas
↓
4. 🔄 Reconfigura Docker con URLs reales
↓
5. ✅ Verifica que todo funcione
↓
6. 🎉 ¡Sistema funcionando en internet!
🔍 Verificación
Verificar que funciona:
# 1. Ver estado
./manage-tunnels.sh status
# 2. Ver URLs
./manage-tunnels.sh urls
# 3. Probar cliente
curl https://TU_URL_CLIENTE/health
URLs correctas:
- Cliente debe devolver:
{"status":"healthy","service":"snatchgame-client"} - Admin debe devolver:
{"status":"healthy","service":"snatchgame-admin"} - Servidor debe devolver:
{"status":"healthy"}
🎯 Comando de Un Solo Paso
Para usuarios experimentados:
cd ngrok && ./setup-complete.sh
⚠️ Notas Importantes
- Mantén la terminal abierta - Los túneles se cierran si cierras la terminal
- URLs dinámicas - Cambian cada vez que reinicias ngrok
- Primera vez - ngrok puede pedir "Visit Site" en el navegador
- Cuenta gratuita - Túneles estables mientras esté activo
🎮 Para Jugar
- Ejecuta:
./setup-complete.sh - Copia la URL del CLIENTE
- Comparte con amigos
- ¡Jueguen desde cualquier lugar del mundo!
💡 Tip: Guarda las URLs que te dé el script, son válidas mientras mantengas la terminal abierta.