Sign inSign up

rusdmv/texlive-ssh-code

By rusdmv

•Updated 8 months ago

Ubuntu 24.04-LTS, x86-64 with TeX Live, SSH, and code-server with Latex Workshop extention

Image
Languages & frameworks
Integration & delivery
Developer tools
0

102

rusdmv/texlive-ssh-code repository overview

⁠texlive-ssh-code

Ubuntu 24.04 development image for LaTeX projects with TeX Live, SSH, and code-server.

⁠Repository Overview

This image provides:

  • TeX Live installed from official install-tl-unx.tar.gz
  • openssh-server access with configurable SSH_USERNAME / SSH_PASSWORD
  • code-server on port 8080
  • Preinstalled VS Code extension: James-Yu.latex-workshop
  • TeX extras: pgf (TikZ) and Microsoft core fonts
  • Persistent project workspace at /workspace/tex-projects

⁠Exposed Ports

  • 22 for SSH
  • 8080 for code-server

⁠TeX Live Version and Installation

  • TeX Live version in this image: 2025
  • Installation method: official CTAN installer tarball install-tl-unx.tar.gz
  • Installation mode: perl ./install-tl --no-interaction --scheme=full
  • During build, tlmgr runs update --self and update --all

⁠Environment Variables

export IMAGE_NAME=texlive-ssh-code:v1
export CONTAINER_NAME=texlive-ssh-code
export SSH_USERNAME=tex
export SSH_PASSWORD=password
export SSH_PORT=2222
export CODE_SERVER_PORT=8080
export WORKSPACE_DIR="$PWD/my-tex-project"

⁠Build

mkdir -p "$WORKSPACE_DIR"

docker build \
  --build-arg SSH_USERNAME="$SSH_USERNAME" \
  --build-arg SSH_PASSWORD="$SSH_PASSWORD" \
  -t "$IMAGE_NAME" .

⁠Usage

docker run -d \
  --name "$CONTAINER_NAME" \
  -e SSH_USERNAME="$SSH_USERNAME" \
  -e SSH_PASSWORD="$SSH_PASSWORD" \
  -p "$SSH_PORT:22" \
  -p "$CODE_SERVER_PORT:8080" \
  -v "$WORKSPACE_DIR:/workspace/tex-projects" \
  "$IMAGE_NAME"

⁠Access

  • SSH: ssh $SSH_USERNAME@localhost -p $SSH_PORT
  • code-server: http://localhost:$CODE_SERVER_PORT
  • code-server password: same as SSH_PASSWORD

⁠Docker Compose

mkdir -p my-tex-project
docker compose up -d --build

⁠Update tlmgr Inside the Container

Check installed TeX Live and tlmgr version:

docker exec -it "$CONTAINER_NAME" tlmgr --version

Update TeX Live packages in the running container:

docker exec -it "$CONTAINER_NAME" sudo tlmgr update --self --all

If you are already connected by SSH, run:

sudo tlmgr --version
sudo tlmgr update --self --all

⁠Notes

  • Root SSH login is disabled (PermitRootLogin no).
  • Administrative actions are done via sudo through SSH_USERNAME.
  • AllowUsers is set to the configured SSH_USERNAME.

Tag summary

Content type

Image

Digest

sha256:cd22d5032…

Size

6.3 GB

Last updated

8 months ago

docker pull rusdmv/texlive-ssh-code:v1