Mayor seguridad
Las compilaciones aisladas (Sandboxed Compiles) son el enfoque recomendado para Ayakaleaf Pro, ya que muchos documentos LaTeX requieren o tienen la capacidad de ejecutar comandos de shell arbitrarios como parte del proceso de compilación del PDF. Si usas compilaciones aisladas, cada compilación se ejecuta en un contenedor de Docker independiente con capacidades limitadas, que no se comparte con ningún otro usuario ni proyecto y que no tiene acceso a recursos externos como la red del host.Gestión de paquetes más sencilla
Para evitar instalar paquetes manualmente, recomendamos habilitar las compilaciones aisladas. Se trata de un ajuste configurable de Server Pro que proporciona a tus usuarios acceso al mismo entorno de TeX Live que en overleaf.com, pero dentro de tu propia instalación local. Las imágenes de TeX Live que usan las compilaciones aisladas contienen los paquetes y fuentes más populares, probados con las plantillas de nuestra galería, lo que garantiza la máxima compatibilidad con los proyectos locales. Habilitar las compilaciones aisladas te permite configurar entre qué versiones de TeX Live pueden elegir los usuarios en sus proyectos, además de establecer una versión predeterminada de la imagen de TeX Live para los proyectos nuevos.Si intentas ejecutar Ayakaleaf Pro sin compilaciones aisladas, tu instancia usará de forma predeterminada una versión de TeX Live con el esquema básico para las compilaciones. Esta versión básica es ligera y solo contiene un subconjunto muy limitado de paquetes de LaTeX, lo que muy probablemente provocará errores de paquetes faltantes a tus usuarios, sobre todo si intentan usar plantillas predefinidas.
Las compilaciones aisladas requieren que el contenedor
sharelatex tenga acceso al socket de Docker de la máquina host (mediante un bind mount) para poder gestionar estos contenedores de compilación hermanos.Cómo funciona
Cuando las compilaciones aisladas están habilitadas, el socket de Docker se monta desde la máquina host en el contenedorsharelatex, de modo que el servicio de compilación del contenedor pueda crear nuevos contenedores de Docker en el host. Después, en cada ejecución del compilador en cada proyecto, el servicio de compilación de LaTeX (CLSI) hará lo siguiente:
- Escribir los archivos del proyecto en una ubicación dentro de
OVERLEAF_DATA_PATH. - Usar el socket de Docker montado para crear un nuevo contenedor
texlivepara la compilación. - Hacer que el contenedor
texlivelea los datos del proyecto desde la ubicación dentro deOVERLEAF_DATA_PATH. - Compilar el proyecto dentro del contenedor
texlive.
Habilitar las compilaciones aisladas
Para usuarios del Toolkit
Para habilitar las compilaciones aisladas (también conocidas como contenedores hermanos o Sibling containers), establece las siguientes opciones de configuración enoverleaf-toolkit/config/overleaf.rc:
config/overleaf.rc
Para usuarios de Docker Compose
A partir de Overleaf CE/Server Pro
5.0.3, las variables de entorno cambiaron de nombre de SHARELATEX_* a OVERLEAF_*.4.x (o anterior), asegúrate de que las variables tengan el prefijo correspondiente (p. ej., SHARELATEX_MONGO_URL en lugar de OVERLEAF_MONGO_URL).
Configurar la imagen de TeX Live
Si te encuentras en China continental, puedes sustituir
ghcr.io por ghcr.nju.edu.cn para acelerar la descarga. Pero NO uses ghcr.nju.edu.cn directamente en la configuración de entorno del Toolkit. Debes mantener ghcr.io como única opción.TEX_LIVE_DOCKER_IMAGE(obligatoria): la imagen de TeX Live predeterminada que se usa para compilar los proyectos nuevos. Esta imagen debe estar incluida enALL_TEX_LIVE_DOCKER_IMAGES.ALL_TEX_LIVE_DOCKER_IMAGE_NAMES(obligatoria): una lista separada por comas de nombres descriptivos para las imágenes, que se usan en las opciones del frontend.ALL_TEX_LIVE_DOCKER_IMAGES(obligatoria): una lista separada por comas de las imágenes de TeX Live que se usarán. Si se usa el Overleaf Toolkit para el despliegue, estas imágenes se descargarán o actualizarán. Para omitir la descarga, estableceSIBLING_CONTAINERS_PULL=falseenconfig/overleaf.rc.
bin/up, el Toolkit descargará automáticamente todas las imágenes indicadas en ALL_TEX_LIVE_DOCKER_IMAGES.
Este es un ejemplo en el que usamos TeX Live 2026 de forma predeterminada para los proyectos nuevos y mantenemos 2025 para los proyectos antiguos.
- Instalación mínima
- Instalación completa
La siguiente configuración instala todas las imágenes de Docker completas de TeX Live de 2025 a 2026. Recomendamos disponer de al menos 64 GB de almacenamiento libre antes de usar esta configuración.
config/variables.env
Se recomienda encarecidamente configurar al menos 2 imágenes texlive-full. Para conocer el motivo en detalle, consulta #known-issues
Imágenes de TeX Live disponibles
Esta es una serie de imágenes de TeX Live especialmente optimizadas para Overleaf, que también pueden añadirse aTEX_LIVE_DOCKER_IMAGE y ALL_TEX_LIVE_DOCKER_IMAGES:
ghcr.io/ayaka-notes/texlive-full:2026.1(también con la etiquetalatest)ghcr.io/ayaka-notes/texlive-full:2025.1ghcr.io/ayaka-notes/texlive-full:2024.1ghcr.io/ayaka-notes/texlive-full:2023.1ghcr.io/ayaka-notes/texlive-full:2022.1ghcr.io/ayaka-notes/texlive-full:2021.1ghcr.io/ayaka-notes/texlive-full:2020.1
¿Puedo usar otro registro de imágenes?
Algunas personas se preguntan si pueden sustituir ghcr.io por otro sitio espejo, o cambiar texlive por otra imagen de Docker Hub.
No, no lo recomendamos porque la configuración es relativamente complicada. Si descargas desde un sitio espejo, puedes renombrar tu imagen a ghcr.io/ayaka-notes/texlive-full.
Pero, si realmente quieres usar tu propio registro de imágenes, añade:
config/variables.env
your-repo, por ejemplo:
hub.your.com/your-repo/texlive-full:2025.1hub.your.com/your-repo/texlive-full:2024.1
sandboxed-compiles/index.mjs
Sincronización automática de imágenes de TeX Live
Para evitar tener que actualizar manualmente tu instancia conbin/up cada vez, puedes automatizar las actualizaciones de tu imagen de TeX Live. Consulta updating-tex-live-full-images-automatically.md.
Problemas conocidos
Este es un caso real de la comunidad de Overleaf:UsandoDebido a ciertas limitaciones técnicas, si solo configuras una única imagen de Docker de TeXLive, como6.0.1-ext-v3.3, tengo esta configuración envariables.env:Esto funciona bien contexlive/texlive:latest-full. Sin embargo, descargué otra imagen de texlive,danteev/texlive:2025-10-15, y cambié ambas variables al nombre de la nueva imagen, pero no funciona:En los registros veo lo siguiente:Parece que la configuración actualizada devariables.envno surte efecto. La compilación sigue intentando ejecutar la imagentexlive/texlive:latest-full, no la nueva. He probado a reiniciar, a eliminar los contenedores y volver a ejecutarlos, pero sigue ocurriendo lo mismo. ¿Alguna solución?
texlive-fullA:latest
texlive-fullB:latest, verás que tus usuarios no pueden compilar ningún proyecto.

