O Overleaf pode converter documentos de e para LaTeX usando o Pandoc. A conversão é executada dentro de um contêiner Docker isolado (sandbox) gerenciado pelo serviço clsi, por isso o recurso fica desativado por padrão e precisa ser ativado com algumas variáveis de ambiente.
O que ele faz
Variáveis de ambiente
Há duas variáveis que importam, e uma parecida que não importa.
1. ENABLE_PANDOC_CONVERSIONS — o interruptor principal
- Tipo: booleano (
true ativa; qualquer outro valor desativa).
- Deve ser definida TANTO no serviço
web QUANTO no clsi. Eles são processos separados com configurações separadas:
- O
web a lê em enablePandocConversions (services/web/config/settings.defaults.js). Ela controla as rotas de importação, as rotas de exportação e a flag ol-ExposedSettings.enablePandocConversions, que informa ao frontend se deve exibir a UI de Importação/Exportação.
- O
clsi a lê em enablePandocConversions (services/clsi/config/settings.defaults.cjs). Ela controla os endpoints que executam o Pandoc.
- Se estiver ativada no
web, mas não no clsi (ou vice-versa), a UI aparecerá, mas a conversão falhará — mantenha-as sincronizadas.
2. PANDOC_IMAGE — a imagem de contêiner que o clsi executa para converter
Pré-requisitos
Como as conversões são executadas como contêineres Docker iniciados pelo clsi:
- O
clsi deve ser executado em modo sandbox com acesso ao Docker. Na stack de desenvolvimento, o clsi já tem SANDBOXED_COMPILES=true e o socket do Docker do host (/var/run/docker.sock) montado.
- A
PANDOC_IMAGE deve estar presente nesse host Docker (baixada ou construída localmente) antes da primeira conversão.
Configuração rápida
A stack de desenvolvimento (develop/dev.env) já vem com:
Como a imagem oficial é privada, construa a imagem incluída uma vez antes de usar o recurso:
Em seguida, (re)inicie a stack para que o clsi e o web carreguem as variáveis.
Construindo a imagem do Pandoc
Uma imagem padrão do Pandoc funciona porque o clsi invoca o Pandoc de forma genérica (sem templates/filtros personalizados). Ela só precisa de três itens essenciais de runtime, todos tratados por develop/pandoc/Dockerfile:
Construa-a e aplique uma tag que corresponda a PANDOC_IMAGE:
Em produção, fixe pandoc/core em uma versão específica em vez de latest para obter builds reproduzíveis, e defina PANDOC_IMAGE como o caminho do seu registro.
Solução de problemas
Última modificação em 5 de outubro de 2026