Docker
Docker zapewnia lekki i przenośny sposób pakowania i uruchamiania aplikacji w izolowanych kontenerach. Dzięki połączeniu aplikacji ze wszystkimi wymaganymi zależnościami kontener gwarantuje spójne działanie na różnych maszynach — od laptopów po serwery produkcyjne. TeX Live ma ogromne możliwości, ale jest duży i wrażliwy na różnice na poziomie systemu. Spakowanie TeX Live w obrazie Docker sprawia, że zestaw narzędzi LaTeX staje się przewidywalny, powtarzalny i łatwy w dystrybucji. Niektóre pakiety TeX Live wymagają jednak dostępu do powłoki. Ze względów bezpieczeństwa kontener powinien działać w ograniczonym środowisku, które uniemożliwia użytkownikom wykonywanie dowolnych poleceń powłoki (na przykład przez\write18 lub shell escape). Taka izolacja chroni system hosta i zapobiega niezamierzonemu dostępowi do systemu plików kontenera lub narzędzi takich jak bash.
Pełna edycja TeXLive
TeXLive-Full@ayaka-notes to w pełni funkcjonalny obraz Docker TeXLive przeznaczony do kompilacji LaTeX w piaskownicy w Ayakaleaf Pro, Overleaf CEP lub w samodzielnych środowiskach kompilacji LaTeX. Ten obraz ma na celu zapewnienie niemal kompletnej dystrybucji TeXLive z preinstalowanymi popularnymi fontami i narzędziami, aby zminimalizować błędy kompilacji spowodowane brakującymi pakietami lub fontami. Uwaga: ten obraz Docker nie zawiera żadnych komponentów sharelatex/overleaf. Służy do kompilacji w Overleaf/Overleaf Pro.Funkcje:
- 🚀 Obsługa architektur serwerowych x86_64 i arm64
- 📦 Pełna i zoptymalizowana instalacja TeXLive
- 🧩 Preinstalowane popularne fonty i narzędzia
- 🐳 Gotowy do użycia z Docker i Docker Compose
- 🧪 Przetestowany z Overleaf Server Pro / Overleaf Pro
- 🔄 Regularnie aktualizowany do najnowszych wydań TeXLive
- 🏷 Tagi dla wielu wersji TeXLive (od 2020 do najnowszej)
- 🧑🔬 Obsługa Knitr dla kodu R w dokumentach LaTeX
Użycie w Ayakaleaf Pro
TeX Live Full od Ayaka-notes został zaprojektowany specjalnie dla ayakaleaf-pro. Jeśli korzystasz z Toolkit, możesz dodać poniższe zmienne środowiskowe do plikuconfig/variables.env.
Na przykład:
config/variables.env
Wersje TeX Live
Dzięki GitHub Action możemy równolegle budować wszystkie obrazy TeX, w tym:ghcr.io/ayaka-notes/texlive-full:2026.1(również taglatest)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.1ghcr.io/ayaka-notes/texlive-full:base
Dlaczego TeX Live 2019 i starsze wersje nie są obsługiwane? Utrzymywanie tych starych obrazów jest niezwykle trudne. Ponadto witryna texlive.info nie udostępnia informacji o wersjach TeX Live wydanych przed 2019 rokiem, więc nie możemy budować obrazów dla tych wersji. Jeśli potrzebujesz konkretnej starej wersji, zgłoś issue i daj nam znać.
Zawarte komponenty
Obraz Docker zawiera następujące pakiety:- Wszystkie pakiety TeXLive (z danego roku)
- Pakiety R (tylko wybrane)
- fontconfig inkscape pandoc python3-pygments wget python3
- gnupg gnuplot perl-modules perl ca-certificates
- ghostscript qpdf r-base-core tar
Licencja
MITProblemy
Problem 01: brak fontu w pamięci podręcznej
Problem 01: brak fontu w pamięci podręcznej
Jeśli podczas kompilacji projektu LaTeX w Overleaf wystąpi brak fontu, kompilacja może trwać bardzo długo, ponieważ w przypadku brakującego fontu TeX Live próbuje przebudować całą pamięć podręczną fontów. Jest to czasochłonny proces.W naszym obrazie pamięć podręczna fontów jest zbudowana z góry — rozwiązaliśmy ten problem w tym commicie
Problem 02: SyncTeX działa bardzo wolno
Problem 02: SyncTeX działa bardzo wolno
Gdy używasz tego obrazu w sharelatex, SyncTeX może działać bardzo wolno.Zobacz: https://github.com/overleaf/overleaf/issues/1150 — wystarczy wyłączyć HTTP 2.0.
Problem 03: błąd ponownej kompilacji z oficjalnym obrazem TeX Live
Problem 03: błąd ponownej kompilacji z oficjalnym obrazem TeX Live
Jeśli używasz oficjalnego obrazu TeX Live z Docker Hub
texlive/texlive, możesz zauważyć, że ponowna kompilacja projektu zgłasza błąd. W naszym obrazie ten problem został jednak rozwiązany, ponieważ używamy najnowszego obrazu bazowego Ubuntu i instalujemy wszystkie zależności z oficjalnego repozytorium Ubuntu.Inne wskazówki techniczne
Podczas budowania obrazów TeX Live (sprzed 2019 roku) zwróć uwagę na następujące problemy:- Przed TeX Live 2017 obsługiwane są wyłącznie
http/ftp, więc nie można pobierać przezhttps, chyba że zmodyfikujesz skryptpeal. - Przed 2015 rokiem udostępniane są tylko pliki sha256, więc nie można weryfikować sum za pomocą sha512.

