# 🐳 Docker - Inicio Rápido ## ⚡ Comandos Rápidos ### Iniciar Todo ```bash chmod +x docker-start.sh ./docker-start.sh ``` ### Detener Todo ```bash ./docker-stop.sh ``` ### Ver Logs ```bash ./docker-logs.sh ``` --- ## 🌐 URLs de Acceso - **Panel Web**: http://localhost:8501 - **API**: http://localhost:8080 - **Docs API**: http://localhost:8080/docs --- ## 📦 Servicios Incluidos | Servicio | Puerto | Descripción | |----------|--------|-------------| | Streamlit Panel | 8501 | Frontend para control de transmisiones | | FastAPI Backend | 8080 | API REST para obtener streams | --- ## 🚀 Primera Vez ```bash # 1. Dar permisos chmod +x docker-*.sh # 2. Iniciar (te pedirá la URL de la API) ./docker-start.sh # 3. Abrir navegador http://localhost:8501 ``` **Nota:** El script te preguntará la URL de la API. Para uso local con Docker, presiona ENTER para usar el valor por defecto. 📚 Más info sobre configuración de API: [API_URL_CONFIG.md](API_URL_CONFIG.md) --- ## 🛠️ Comandos Docker Compose ```bash # Construir docker-compose build # Iniciar en background docker-compose up -d # Ver logs docker-compose logs -f # Ver estado docker-compose ps # Detener docker-compose down # Reiniciar un servicio docker-compose restart streamlit-panel ``` --- ## 📚 Documentación Completa Ver: `DOCKER_GUIDE.md` --- ## ✅ Verificar que Funciona ```bash # 1. Ver servicios corriendo docker-compose ps # 2. Debe mostrar: # streamlit_panel Up (healthy) # tubescript_api Up (healthy) # 3. Probar panel web open http://localhost:8501 # 4. Probar API curl http://localhost:8080/docs ``` --- ## 🐛 Problemas Comunes ### Puerto ya en uso ```bash # Cambiar puertos en docker-compose.yml # O detener proceso que usa el puerto lsof -i :8501 kill -9 ``` ### Contenedor no inicia ```bash # Ver logs detallados docker-compose logs streamlit-panel docker-compose logs tubescript-api ``` ### Reconstruir desde cero ```bash docker-compose down docker-compose build --no-cache docker-compose up -d ``` --- ## 🎉 ¡Eso es Todo! Con Docker, TubeScript-API está listo en segundos. **¡Comienza a transmitir! 📺🚀**