- Cambiado service de http://traefik:80 a https://traefik:443
- noTLSVerify: true para aceptar certificados self-signed de Traefik
- Esto previene ERR_TOO_MANY_REDIRECTS
- docker compose wait no funciona sin healthcheck configurado
- Reemplazado con sleep 5 + verificación de que el container corre
- Agrega paso de verificación para confirmar que el tunnel está up
- Cambiado de bind mount a named volume para evitar error 'is a directory'
- Workflow ahora copia config.yml y credentials.json al volumen con docker cp
- Esto evita que Docker cree directorios en vez de archivos
- Método más robusto y compatible con gitea-runner
- Verifica que config.yml sea un archivo antes de docker compose up
- Limpia volúmenes con -v al hacer down
- Elimina config.yml si es un directorio (fix para error de mount)
- Workflow ahora crea .env y credentials.json desde secrets
- Eliminado setup-ci.sh (ya no es necesario)
- No requiere setup manual en el servidor
- Workflow verifica/crea la red Docker 'principal'
- README actualizado con instrucciones de configuración de secrets
Configuración requerida en Gitea Settings > Secrets:
- TUNNEL_ID: El ID del tunnel de Cloudflare
- TUNNEL_CREDENTIALS: El contenido completo de credentials.json
- setup-ci.sh: Script no interactivo que verifica archivos de config
- Workflow actualizado para ejecutar setup-ci.sh antes del deploy
- Los archivos credentials.json y .env persisten en el workspace del runner
- Solo requiere setup.sh manual la primera vez en el servidor
- Documentación actualizada con instrucciones para CI/CD
- setup.sh: Script interactivo que verifica/crea el tunnel automáticamente
- Detecta si ya existe el tunnel nucleorio-tunnel
- Instala cloudflared si no está presente
- Genera credentials.json y .env automáticamente
- Configura DNS opcionalmente
- Actualizado README con instrucciones de setup rápido
- Workflow actualizado con mejores mensajes de error
Configuración de Cloudflare Tunnel con wildcard *.nucleoriofrio.com
que apunta a Traefik para mantener autenticación con Authentik.
Componentes:
- config.yml: Configuración del tunnel con wildcard
- docker-compose.yml: Servicio cloudflared
- .env.example: Template para variables de entorno
- README.md: Documentación completa de setup
- .gitignore: Protección de credenciales