Skip to main content

Docker

O Docker oferece uma forma leve e portátil de empacotar e executar aplicações em contêineres isolados. Ao agrupar a aplicação com todas as dependências necessárias, um contêiner garante um comportamento consistente em diferentes máquinas, de laptops a servidores de produção. O TeX Live é poderoso, mas grande e sensível a diferenças no nível do sistema. Empacotar o TeX Live dentro de uma imagem Docker torna a cadeia de ferramentas LaTeX previsível, reproduzível e fácil de distribuir. No entanto, alguns pacotes do TeX Live dependem de acesso ao shell. Por razões de segurança, o contêiner deve ser executado em um ambiente restrito que impeça os usuários de executar comandos de shell arbitrários (por exemplo, via \write18 ou shell escape). Esse isolamento protege o sistema host e evita o acesso indesejado ao sistema de arquivos subjacente do contêiner ou a ferramentas como o bash.

Edição completa do TeXLive

O TeXLive-Full@ayaka-notes é uma imagem Docker do TeXLive completa, projetada para compilação LaTeX em sandbox no Ayakaleaf Pro, no Overleaf CEP ou em ambientes independentes de compilação LaTeX. Esta imagem tem como objetivo fornecer uma distribuição TeXLive quase completa, com fontes e ferramentas comuns pré-instaladas, a fim de minimizar falhas de compilação causadas por pacotes ou fontes ausentes. Observação: esta imagem Docker não contém nenhum componente do sharelatex/overleaf. Ela é usada para a compilação do Overleaf/Overleaf Pro.

Recursos:

  • 🚀 Suporte às arquiteturas de servidor x86_64 e arm64
  • 📦 Instalação completa e otimizada do TeXLive
  • 🧩 Fontes e utilitários comuns pré-instalados
  • 🐳 Pronta para uso com Docker e Docker Compose
  • 🧪 Testada com o Overleaf Server Pro / Overleaf Pro
  • 🔄 Atualizada regularmente com as versões mais recentes do TeXLive
  • 🏷 Várias tags de versão do TeXLive (2020 – mais recente)
  • 🧑‍🔬 Suporte ao Knitr para código R em documentos LaTeX

Uso com o Ayakaleaf Pro

O TeX Live Full da Ayaka-notes foi projetado especialmente para o ayakaleaf-pro; se você for usuário do toolkit, pode adicionar as seguintes variáveis de ambiente ao arquivo config/variables.env. Por exemplo:
config/variables.env

Versões do TeX Live

Graças ao Github Action, podemos construir todas as imagens tex em paralelo, o que inclui:
  • ghcr.io/ayaka-notes/texlive-full:2026.1 (também com a tag latest)
  • ghcr.io/ayaka-notes/texlive-full:2025.1
  • ghcr.io/ayaka-notes/texlive-full:2024.1
  • ghcr.io/ayaka-notes/texlive-full:2023.1
  • ghcr.io/ayaka-notes/texlive-full:2022.1
  • ghcr.io/ayaka-notes/texlive-full:2021.1
  • ghcr.io/ayaka-notes/texlive-full:2020.1
  • ghcr.io/ayaka-notes/texlive-full:base
Usamos o arquivo espelhado do texlive info, que inclui quase todas as imagens do texlive de 1996 a 2025. E, graças ao Dockerfile do Overleaf, podemos construir este projeto mais rapidamente.
Por que o TeX Live 2019 e versões anteriores não são suportados? Manter essas imagens antigas é extremamente difícil. Além disso, o site texlive.info não fornece informações para versões do TeX Live lançadas antes de 2019, por isso não conseguimos construir imagens para essas versões. Se você precisar de uma versão antiga específica, abra uma issue e nos informe.

Componentes incluídos

Os seguintes pacotes estão incluídos na imagem docker.
  • Todos os pacotes do TeXLive (daquele ano)
  • Pacotes R (apenas alguns selecionados)
  • fontconfig inkscape pandoc python3-pygments wget python3
  • gnupg gnuplot perl-modules perl ca-certificates
  • ghostscript qpdf r-base-core tar
As seguintes fontes estão incluídas na imagem docker.
Confirme se as fontes em questão podem ser usadas comercialmente. Não nos responsabilizamos por quaisquer problemas legais decorrentes do uso incorreto das fontes. Ao baixar a imagem, você concorda automaticamente com isso.

Licença

MIT

Problemas

Quando o overleaf compila um projeto LaTeX e ocorre a falta de uma fonte, você pode perceber que a compilação demora muito; isso ocorre porque, quando uma fonte está ausente, o texlive tenta reconstruir todo o cache de fontes. Esse é um processo demorado.Em nossa imagem, o cache de fontes já vem pré-construído; corrigimos esse problema com este commit
Ao usar esta imagem no sharelatex, você pode perceber que o SyncTeX fica extremamente lento.Consulte: https://github.com/overleaf/overleaf/issues/1150; basta desativar o http 2.0.
Se você usar a imagem oficial do texlive no docker hub, texlive/texlive, pode perceber que, ao recompilar um projeto, ocorre um erro. Em nossa imagem, porém, esse problema foi corrigido, porque usamos a imagem base mais recente do ubuntu e instalamos todas as dependências a partir do repositório oficial do ubuntu.

Outras observações técnicas

Ao construir imagens do texlive (anteriores a 2019), talvez seja necessário prestar atenção aos seguintes problemas:
  • Antes do texlive 2017, apenas http/ftp é suportado, então não é possível usar https para o download, a menos que você modifique o script peal.
  • Antes de 2015, apenas o arquivo sha256 é fornecido. Portanto, não é possível usar sha512 para a verificação.
Última modificação em 4 de outubro de 2026