diff --git a/Dockerfile.basic b/Dockerfile.basic index a203294..bca1007 100644 --- a/Dockerfile.basic +++ b/Dockerfile.basic @@ -1,4 +1,5 @@ -FROM ubuntu:xenial +ARG BASE_TAG=focal +FROM ubuntu:${BASE_TAG} MAINTAINER Benedikt Lang ENV DEBIAN_FRONTEND noninteractive @@ -15,7 +16,9 @@ RUN wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz; \ rm -r /install-tl-unx; \ rm install-tl-unx.tar.gz -ENV PATH="/usr/local/texlive/2017/bin/x86_64-linux:${PATH}" +RUN cd /usr/local/texlive/ \ + && ln -s $(find . -type d -regextype posix-egrep -regex '^./2[0-9]{3}$') current +ENV PATH="/usr/local/texlive/current/bin/x86_64-linux:${PATH}" ENV HOME /data WORKDIR /data diff --git a/Dockerfile.full b/Dockerfile.full index 5e18346..cc2c244 100644 --- a/Dockerfile.full +++ b/Dockerfile.full @@ -1,4 +1,5 @@ -FROM blang/latex:ctanbasic +ARG BASE_IMAGE=blang/latex:ctanbasic +FROM ${BASE_IMAGE} MAINTAINER Benedikt Lang RUN tlmgr install scheme-full diff --git a/Dockerfile.ubuntu b/Dockerfile.ubuntu index 0abfb73..bb0dd7f 100644 --- a/Dockerfile.ubuntu +++ b/Dockerfile.ubuntu @@ -1,4 +1,5 @@ -FROM ubuntu:xenial +ARG BASE_TAG=focal +FROM ubuntu:${BASE_TAG} MAINTAINER Benedikt Lang ENV DEBIAN_FRONTEND noninteractive diff --git a/Makefile b/Makefile index 601b9e6..cc2888b 100644 --- a/Makefile +++ b/Makefile @@ -2,17 +2,23 @@ NS = blang REPO = latex IMAGE = $(NS)/$(REPO) -.PHONY: build build_ubuntu build_basic build_full +.PHONY: build build_ubuntu build_ubuntu_xenial build_ubuntu_focal build_basic build_full build: build_ubuntu build_basic build_full -build_ubuntu: Dockerfile.ubuntu - @docker build -f Dockerfile.ubuntu -t $(IMAGE):ubuntu . +build_ubuntu: build_ubuntu_xenial build_ubuntu_focal + @docker tag $(IMAGE):ubuntu-focal $(IMAGE):ubuntu + +build_ubuntu_xenial: Dockerfile.ubuntu + @docker build --pull -f Dockerfile.ubuntu --build-arg BASE_TAG=xenial -t $(IMAGE):ubuntu-xenial . + +build_ubuntu_focal: Dockerfile.ubuntu + @docker build --pull -f Dockerfile.ubuntu --build-arg BASE_TAG=focal -t $(IMAGE):ubuntu-focal . build_basic: Dockerfile.basic - @docker build -f Dockerfile.basic -t $(IMAGE):ctanbasic . + @docker build --pull -f Dockerfile.basic -t $(IMAGE):ctanbasic . build_full: build_basic Dockerfile.full - @docker build -f Dockerfile.full -t $(IMAGE):ctanfull . + @docker build -f Dockerfile.full --build-arg BASE_IMAGE=$(IMAGE):ctanbasic -t $(IMAGE):ctanfull . default: build diff --git a/README.md b/README.md index 644c960..44eb019 100644 --- a/README.md +++ b/README.md @@ -15,9 +15,11 @@ Versions -------- All versions are based on Ubuntu: ([See all tags](https://hub.docker.com/r/blang/latex/)) -- [blang/latex:ubuntu (:latest) - Dockerfile.ubuntu](Dockerfile.ubuntu) Ubuntu TexLive distribution: Old but stable, most needed package: texlive-full (3.9GB) -- [blang/latex:ctanbasic - Dockerfile.basic](Dockerfile.basic) CTAN TexLive Scheme-basic: Up-to-date, only basic packages, base for custom builds (500MB) -- [blang/latex:ctanfull - Dockerfile.full](Dockerfile.full) CTAN TexLive Scheme-full: Up-to-date, all packages (5.6GB) +- [blang/latex:ubuntu (:ubuntu-focal :latest) - Dockerfile.ubuntu](Dockerfile.ubuntu) +Ubuntu TexLive distribution from Focal Fossa (20.04), most needed package: texlive-full (4.6GB) +- [blang/latex:ubuntu-xenial (:latest) - Dockerfile.ubuntu](Dockerfile.ubuntu) Ubuntu TexLive distribution from Xenial Xerus: Old but stable (4.2GB) +- [blang/latex:ctanbasic - Dockerfile.basic](Dockerfile.basic) CTAN TexLive Scheme-basic: Up-to-date, only basic packages, base for custom builds (600MB) +- [blang/latex:ctanfull - Dockerfile.full](Dockerfile.full) CTAN TexLive Scheme-full: Up-to-date, all packages (7.5GB) If you need... - ...the most-stuff-works-out-of-the-box package, try `blang/latex:ubuntu`.