TubeScript-API/DOCKER_RUN.md

1.8 KiB

Ejecutar servicios Docker (API y herramientas) por separado

Este archivo explica cómo levantar el API de forma separada para probar cookies/proxy y cómo pasar la variable API_PROXY para usar Tor u otro proxy.

Levantar solo el API (recomendado para desarrollo):

# Reconstruir la imagen del API y levantar solo el servicio tubescript-api
API_PROXY="" docker compose -f docker-compose.yml build --no-cache tubescript-api
API_PROXY="" docker compose -f docker-compose.yml up -d tubescript-api

# Ver logs
docker logs -f tubescript_api

Levantar el API con proxy (Tor ejemplo):

# Asegúrate de tener Tor corriendo en tu host (socks5 en 127.0.0.1:9050)
# macOS: brew install tor && tor &

# Levantar con API_PROXY apuntando a tor
API_PROXY="socks5h://host.docker.internal:9050" \
  docker compose -f docker-compose.yml up -d --build tubescript-api

# Nota: en macOS dentro de contenedores, usa host.docker.internal para apuntar al host

Montar cookies y probar endpoints

# Asegúrate de que ./cookies.txt existe en la raíz del proyecto o súbelo con la API
curl -X POST "http://127.0.0.1:8000/upload_cookies" -F "file=@/ruta/a/cookies.txt"

# Probar metadata
curl -s "http://127.0.0.1:8000/debug/metadata/K08TM4OVLyo" | jq .

# Intento de subtítulos verboso
curl -s "http://127.0.0.1:8000/debug/fetch_subs/K08TM4OVLyo?lang=es" | jq .

# Obtener stream URL
curl -s "http://127.0.0.1:8000/stream/K08TM4OVLyo" | jq .

Rebuild del API (cuando hagas cambios en main.py o dependencias):

# Reconstruir imagen (sin cache) y levantar
docker compose -f docker-compose.yml build --no-cache tubescript-api
docker compose -f docker-compose.yml up -d tubescript-api

# Si cambias requirements.txt, reconstruye la imagen para que pip instale nuevas dependencias