Skip to content

Docker image for writing environment for Japanese documents with LaTeX / TeX Live

License

Notifications You must be signed in to change notification settings

nukopy/ubuntu-texlive-ja

Repository files navigation

ubuntu-texlive-ja

Build Docker image and Push to Docker Hub Docker Image Version (tag latest semver) Docker Image Size Docker Pulls

Docker image for writing environment for Japanese documents with LaTeX / TeX Live

Supported Platforms

This Docker image supports:

  • linux/amd64 (TeX Live x86_64-linux build)
  • linux/arm64v8 (TeX Live aarch64-linux build)

Platforms supported by Docker are here.
Platforms supported by TeX Live are here.

Installation

docker pull nukopy/ubuntu-texlive-ja

Usage

# on local machine
docker run --rm -it -v $(pwd):/workdir nukopy/ubuntu-texlive-ja

# in Docker container
cd ./test/document
latexmk -pvc ./main.tex
# When you edit ./main.tex, ./main.pdf is automatically updated.

You can create TeX documents in any location and with any filename you prefer. Try to create <filename>.tex and latexmk -pvc path/to/<filename>.tex in the container.

for Developers: Checklist for Version up of TeX Live

  • Update the environment variable TEXLIVE_VERSION in Dockerfile is updated to the new version
  • Update the variable TAG in Makefile is updated to the new version
  • Build Docker image with tag of new version
  • Run tests for the new version with Docker container built on local
  • Push Docker image to Docker Hub
  • Run tests for the new version with Docker container pulled from Docker Hub

If the last step is passed, release the new version!

Build

  • Build Docker image with tag of new version
docker build . -t nukopy/ubuntu-texlive-ja:[tag]
  • Build Docker image with tag of new version for multi-platforms
docker buildx build . --platform linux/amd64,linux/arm64 -t nukopy/ubuntu-texlive-ja:[tag]

Tests with Docker container built on local

make test
make test-slide # test for beamer

Push Docker image to Docker Hub

To deploy new Docker image to Docker Hub, run the following commands:

  • Before push to Docker Hub, login to Docker Hub
docker login
  • Push Docker image to Docker Hub
docker push nukopy/ubuntu-texlive-ja:[tag]
  • Push Docker image to Docker Hub for multi-platforms
docker buildx build . --platform linux/amd64,linux/arm64 -t nukopy/ubuntu-texlive-ja:[tag] --push

Tests with Docker container pulled from Docker Hub

In this repository, build and push Docker image to Docker Hub with GitHub Actions workflow automatically when tags are pushed to GitHub repository.

For tests, push Docker image to Docker Hub with a tag for test like test-ci. Don't use tags like texlive2023 on test because it is used for release versions.

# push a tag for test
git tag -a test-ci -m "Release test-ci :tada:" && git push origin test-ci

# pull Docker image with a tag for test from Docker Hub
docker pull nukopy/ubuntu-texlive-ja:test-ci

# before run tests, you should change the tag of Docker image `TAG` in `Makefile` like `TAG := test-ci`
# run tests with Docker container pulled from Docker Hub
make test

References

Official documentation of TeX Live:

Blog posts about TeX Live:

This repository is inspired by the following repositories:

Official documentation of Docker: