
https://img.shields.io/badge/docker.io-kjarosh%2Flatex-blue](https://hub.docker.com/r/kjarosh/latex)
本仓库定义了一组可用于在容器中运行LaTeX的镜像(例如在CI/CD中)。它们有多种版本,对应不同的TeX Live方案(见下表)。默认方案为full,包含所有包。
如果缺少某些包,您始终可以使用tlmgr安装。镜像基于alpine,因此可使用apk安装系统包。
| 方案 | 镜像 | 大小 |
|---|---|---|
| minimal | kjarosh/latex:2025.1-minimal | ~40 MB |
| basic | kjarosh/latex:2025.1-basic | ~90 MB |
| small | kjarosh/latex:2025.1-small | ~180 MB |
| medium | kjarosh/latex:2025.1-medium | ~500 MB |
| full | kjarosh/latex:2025.1 | ~2 GB |
镜像设计为可复用层。例如,full版本会在medium版本的基础上添加不存在的包层,便于管理并节省空间。
如果您正在编写CI/CD配置,请查看CI/CD示例!
假设您想快速将当前目录中名为main.tex的文件编译为PDF,并将输出放在./out中:
shelldocker run --rm -v "$PWD:/src" -w /src -u "$UID:$GID" kjarosh/latex:2025.1 latexmk -pdf -outdir=out -auxdir=out/aux main.tex
如果您想处理LaTeX项目并实时查看更改,可在命令末尾添加-pvc。这将在源文件更改时自动重新编译项目。
如果想使用不同的引擎,例如使用XeLaTeX可添加-xelatex,使用LuaLaTeX可添加-lualatex。
其他有用的选项包括-c、-g或-silent等。
详见latexmk文档了解详细用法和选项。
如果不想使用latexmk,您可以自由使用任何命令(latex、pdflatex、xelatex等),它们应该可以正常工作。对于更复杂的构建过程,建议使用make等构建工具。在这种情况下,您需要在容器中通过apk add make安装它。
以下描述几种版本类型。
如果不确定使用哪个版本,建议使用最新稳定版本。
稳定版本格式为<major>.<minor>(例如2022.1)。主要版本对应TeX Live版本(即年份),次要版本是该年份内的镜像版本。
稳定版本提供镜像更新和修复,包含发布时特定TeX Live版本的包集合。
| TeX Live 版本 | 最新稳定版本 |
|---|---|
| 2025 | 2025.1 |
| 2024 | 2024.5 |
| 2023 | 2023.4 |
| 2022 | 2022.3 |
| 2021 | 2021.4 |
| 2020 | 2020.2 |
| 2019 | 2019.2 |
| 2018 | 2018.2 |
所有稳定版本可在https://github.com/kjarosh/latex-docker/releases%E6%9F%A5%E7%9C%8B%E3%80%82
如果您想使用最新的TeX Live或访问过去的旧版本,可使用开发版本。
开发版本每天自动发布,有以下几种格式:
devel —— 使用主TL镜像的最新开发构建。强烈不建议使用此版本,尤其是在CI/CD中,因为当有新版本TeX Live发布时,tlmgr可能无法工作。
devel-<TL_VERSION>-<DATE> —— 包含特定<TL_VERSION>的TeX Live开发版本,基于<DATE>的历史镜像(确保tlmgr可工作)。通常这些镜像仅创建一次,未来不会更新。
devel-<TL_VERSION> —— 特定TeX Live版本的最新开发构建。当<TL_VERSION>是当前TeX Live版本时,此镜像通常比<TL_VERSION>的最新稳定版本更新。但当<TL_VERSION>不是当前TeX Live版本时,最新稳定版本通常包含维护修复和基础镜像更新。
devel-any-<DATE> —— 包含<DATE>的TeX Live开发版本。与devel-<TL_VERSION>-<DATE>相同,但不包含<TL_VERSION>,适用于想使用<DATE>的TeX Live而不知道<TL_VERSION>的场景。
使用latexmk的示例:
yamlname: 编译LaTeX on: [ push ] jobs: container: runs-on: ubuntu-latest container: kjarosh/latex:2024.4 steps: - name: 检出代码 uses: actions/checkout@v4 - name: 使用latexmk构建 run: latexmk -pdf -output-directory=out main.tex - name: 上传文档 uses: actions/upload-artifact@v4 with: name: 主文档 path: out/index.pdf
使用latexmk的示例:
yamlbuild: stage: build image: kjarosh/latex:2024.4 script: - latexmk -pdf -output-directory=out main.tex artifacts: paths: - out/index.pdf
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。





探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务