Skip to main content

Docker

Docker は、アプリケーションをパッケージ化し、分離されたコンテナ内で実行するための軽量でポータブルな手段を提供します。アプリケーションを必要なすべての依存関係とともにバンドルすることで、コンテナはノート PC から本番サーバーまで、異なるマシン間で一貫した動作を保証します。 TeX Live は強力ですが、サイズが大きく、システムレベルの違いの影響を受けやすいソフトウェアです。TeX Live を Docker イメージにパッケージ化することで、LaTeX ツールチェーンを予測可能かつ再現可能にし、配布も容易になります。 ただし、TeX Live のパッケージの中にはシェルへのアクセスに依存するものがあります。セキュリティ上の理由から、コンテナはユーザーが任意のシェルコマンドを実行できない(たとえば \write18 やシェルエスケープ経由で)制限された環境で実行するべきです。この分離によってホストシステムが保護され、コンテナの基盤となるファイルシステムや bash などのツールへの意図しないアクセスを防ぎます。

TeXLive フルエディション

TeXLive-Full@ayaka-notes は、Ayakaleaf Pro、Overleaf CEP、またはスタンドアロンの LaTeX コンパイル環境でのサンドボックス化された LaTeX コンパイル向けに設計された、フル機能の TeXLive Docker イメージです。 このイメージは、パッケージやフォントの不足によるコンパイルの失敗を最小限に抑えるため、一般的なフォントやツールがプリインストールされた、ほぼ完全な TeXLive ディストリビューションを提供することを目指しています。注:この Docker イメージには sharelatex/overleaf のコンポーネントは含まれていません。Overleaf/Overleaf Pro のコンパイルに使用されます。

機能:

  • 🚀 x86_64 と arm64 の両方のサーバーアーキテクチャをサポート
  • 📦 完全かつ最適化された TeXLive のインストール
  • 🧩 一般的なフォントとユーティリティをプリインストール
  • 🐳 Docker と Docker Compose ですぐに使用可能
  • 🧪 Overleaf Server Pro / Overleaf Pro でテスト済み
  • 🔄 最新の TeXLive リリースに合わせて定期的に更新
  • 🏷 複数の TeXLive バージョンタグ(2020 – 最新)
  • 🧑‍🔬 LaTeX ドキュメント内の R コード向けの Knitr をサポート

Ayakaleaf Pro での使い方

Ayaka-notes による TeX Live Full は ayakaleaf-pro 向けに特別に設計されています。Toolkit ユーザーであれば、config/variables.env ファイルに次の環境変数を設定して使用できます。 例:
config/variables.env

TeX Live のバージョン

GitHub Action のおかげで、すべての TeX イメージを並列にビルドできます。対象は次のとおりです。
  • ghcr.io/ayaka-notes/texlive-full:2026.1(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
texlive info のミラーアーカイブを使用しています。ここには 1996 年から 2025 年までのほぼすべての TeX Live イメージが含まれています。また、Overleaf の Dockerfile のおかげで、このプロジェクトをより速くビルドできています。
TeX Live 2019 以前がサポートされていないのはなぜですか? これらの古いイメージを維持するのは非常に困難です。また、texlive.info のウェブサイトでは 2019 年より前にリリースされた TeX Live バージョンの情報が提供されていないため、それらのバージョンのイメージをビルドできません。特定の古いバージョンが必要な場合は、issue を作成してお知らせください。

含まれるコンポーネント

Docker イメージには次のパッケージが含まれています。
  • すべての TeXLive パッケージ(その年のもの)
  • R パッケージ(一部のみ)
  • fontconfig inkscape pandoc python3-pygments wget python3
  • gnupg gnuplot perl-modules perl ca-certificates
  • ghostscript qpdf r-base-core tar
Docker イメージには次のフォントが含まれています。
該当するフォントが商用利用可能かどうかを必ず確認してください。フォントの誤った使用によって生じた法的問題について、私たちは一切責任を負いません。イメージをダウンロードした時点で、これに自動的に同意したものとみなされます。

ライセンス

MIT

問題

Overleaf が LaTeX プロジェクトをコンパイルする際にフォントが見つからないと、コンパイル処理に長い時間がかかることがあります。これは、フォントが見つからない場合に TeX Live がフォントキャッシュ全体を再構築しようとするためで、時間のかかる処理です。私たちのイメージではフォントキャッシュを事前に構築しており、このコミットでこの問題を修正しています。
このイメージを sharelatex で使用すると、SyncTeX が非常に遅いことに気付くかもしれません。https://github.com/overleaf/overleaf/issues/1150 を参照してください。HTTP 2.0 を無効にするだけで解決します。
Docker Hub の TeX Live 公式イメージ texlive/texlive を使用すると、プロジェクトを再コンパイルした際にエラーが報告されることがあります。しかし、私たちのイメージではこの問題は修正されています。最新の Ubuntu ベースイメージを使用し、すべての依存関係を Ubuntu の公式リポジトリからインストールしているためです。

その他の技術的な注意事項

TeX Live イメージ(2019 年以前)をビルドする際は、次の問題に注意する必要があるかもしれません。
  • TeX Live 2017 より前は http/ftp のみがサポートされているため、peal スクリプトを修正しない限り https でダウンロードすることはできません。
  • 2015 年より前は sha256 ファイルのみが提供されています。そのため、sha512 でチェックすることはできません。
最終更新日 2026年10月4日