Skip to main content
40-overleaf.yaml
El primer arranque ejecuta las migraciones de la base de datos y tarda uno o dos minutos. El pod está listo cuando /status responde; entonces abre OVERLEAF_SITE_URL.

Por qué el manifiesto es así

  • Volumen de datos. Todo lo que hay en /var/lib/overleaf (archivos de proyectos, historial, subidas) reside en el PVC. Con almacenamiento local del nodo, como local-path, los datos permanecen en un nodo; con almacenamiento en bloque en red, el pod puede moverse entre nodos.
  • Volúmenes de compilación y el socket de Docker. Ayakaleaf Pro pide al Docker del nodo que inicie un contenedor de TeX Live y le pasa el directorio de compilación del proyecto mediante su ruta en el nodo. Por eso estos directorios son volúmenes hostPath, y sus rutas se repiten en SANDBOXED_COMPILES_HOST_DIR_*. Su contenido son datos temporales y no necesita copia de seguridad.
  • enableServiceLinks: false. Kubernetes añade a cada pod variables al estilo de Docker para cada Service del namespace: el Service redis se convierte en REDIS_PORT=tcp://10.x.x.x:6379, y el Service git-bridge en GIT_BRIDGE_PORT=tcp://.... Algunos servicios de Overleaf leen variables con estos nombres. En este pod prevalecen los ajustes de OVERLEAF_REDIS_* y del ConfigMap, pero git-bridge toma GIT_BRIDGE_PORT como su puerto y se detiene (consulta Integración con Git). Desactivar los enlaces limita el entorno a lo que tú estableces.
  • Recreate. Dos pods nunca deben usar el mismo volumen de datos ni ejecutar migraciones al mismo tiempo.
  • Exponerlo. El Service NodePort responde en el puerto 30080 de cada nodo. En producción, coloca delante tu controlador de ingress o balanceador de carga y termina TLS allí; debe permitir WebSockets, tiempos de espera de petición de 10 minutos (compilaciones largas) y subidas de 50 MB, y pasar X-Forwarded-For y X-Forwarded-Proto.
Última modificación el 2 de noviembre de 2026