Skip to content
Permalink
f8f88281c3
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
108 lines (84 sloc) 2.92 KB
FROM python:3.8-buster
ENV PYTHONUNBUFFERED 1
ENV SHELL /bin/bash
RUN sed -i "s#deb http://deb.debian.org/debian buster main#deb http://deb.debian.org/debian buster main contrib non-free#g" /etc/apt/sources.list
# ------------------------------------------
# install necessary packages via apt-get:
# ------------------------------------------
RUN apt-get update && apt-get install -y --no-install-recommends \
graphicsmagick \
pandoc \
pandoc-citeproc \
curl \
biber
# install latex:
RUN apt-get update && apt-get install -y --no-install-recommends \
texlive-xetex
# install fonts:
RUN apt-get update && apt-get install -y --no-install-recommends \
texlive-fonts-extra \
ttf-mscorefonts-installer \
msttcorefonts \
fonts-lmodern \
fonts-noto-cjk \
texlive-lang-chinese \
texlive-science \
texlive-bibtex-extra \
tex-gyre
# install fonts:
RUN cp -r \
/usr/share/texlive/texmf-dist/fonts/opentype/public/xits \
/usr/local/share/fonts/
RUN fc-cache -f
RUN apt-get update && apt-get install -y --no-install-recommends \
less
# install fonts:
RUN apt-get update && apt-get install -y --no-install-recommends \
tralics
# needed for 'pdfcrop':
RUN apt-get update && apt-get install -y --no-install-recommends \
texlive-extra-utils
RUN apt-get update && apt-get install -y --no-install-recommends \
tex4ht
RUN apt-get update && apt-get install -y --no-install-recommends \
tidy
RUN apt-get update && apt-get install -y --no-install-recommends \
ghostscript
# install latex:
RUN apt-get update && apt-get install -y --no-install-recommends \
default-jre
RUN apt-get update && apt-get install -y --no-install-recommends \
texlive-lang-german \
texlive-lang-english \
texlive-lang-italian \
texlive-lang-french
# this is supposed to save memory:
RUN rm -rf /var/lib/apt/lists/*
# ------------------------------------------
# directories for manual installations:
# ------------------------------------------
ENV INSTALL_DIR "/eoa/install"
RUN mkdir -p "$INSTALL_DIR/"
ENV UTILS_BIN_DIR "/eoa/bin"
RUN mkdir -p "$UTILS_BIN_DIR/"
ENV PATH $UTILS_BIN_DIR:$PATH
# ------------------------------------------
# install python dependencies:
# ------------------------------------------
WORKDIR ${INSTALL_DIR}
COPY requirements.txt "$INSTALL_DIR/"
RUN pip install -r "requirements.txt"
# ------------------------------------------
# manual installations:
# ------------------------------------------
# install saxon
# Debians version of saxon is too old. We need to download it "manually" :-P
WORKDIR ${INSTALL_DIR}
RUN wget 'https://sourceforge.net/projects/saxon/files/Saxon-HE/9.8/SaxonHE9-8-0-10J.zip'
RUN unzip -d "$UTILS_BIN_DIR" "SaxonHE9-8-0-10J.zip"
WORKDIR ${UTILS_BIN_DIR}
RUN echo '#!/bin/bash' > $UTILS_BIN_DIR/saxon
RUN echo 'java -jar $UTILS_BIN_DIR/saxon9he.jar "$@"' >> $UTILS_BIN_DIR/saxon
RUN chmod ugo+x $UTILS_BIN_DIR/saxon
COPY ".init-container.sh" "$UTILS_BIN_DIR/init_container.sh"
RUN chmod ugo+x "$UTILS_BIN_DIR/init_container.sh"