1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
# Create a Docker image that is ready to run the full Checker Framework tests,
# including building the manual, Javadoc, and the JDK, using JDK 11.
FROM ubuntu
MAINTAINER Michael Ernst <mernst@cs.washington.edu>
## Keep this file in sync with ../../docs/manual/troubleshooting.tex
# According to
# https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/:
# * Put "apt-get update" and "apt-get install" and apt cleanup in the same RUN command.
# * Do not run "apt-get upgrade"; instead get upstream to update.
RUN export DEBIAN_FRONTEND=noninteractive \
&& apt-get -qqy update \
&& apt-get -qqy install \
openjdk-11-jdk
RUN export DEBIAN_FRONTEND=noninteractive \
&& apt-get -qqy update \
&& apt-get -qqy install \
ant \
cpp \
git \
gradle \
jq \
libcurl3-gnutls \
make \
maven \
mercurial \
python3-pip \
python3-requests \
unzip \
wget
# Ubuntu 18.04 has Maven 3.6.0, but 3.6.1 apparently has better retry
# behavior to work around network problems.
RUN export DEBIAN_FRONTEND=noninteractive \
&& VER=3.6.3 \
&& mkdir -p $HOME/bin/install \
&& cd $HOME/bin/install \
&& wget http://apache.mirrors.pair.com/maven/maven-3/${VER}/binaries/apache-maven-${VER}-bin.tar.gz \
&& tar xzf apache-maven-${VER}-bin.tar.gz \
&& (cd /usr/local/bin && ln -sf $HOME/bin/install/apache-maven-${VER}/bin/* .) \
&& hash -r
RUN export DEBIAN_FRONTEND=noninteractive \
&& apt-get -qqy update \
&& apt-get -qqy install \
dia \
hevea \
imagemagick \
latexmk \
librsvg2-bin \
rsync \
texlive-font-utils \
texlive-fonts-recommended \
texlive-latex-base \
texlive-latex-extra \
texlive-latex-recommended
RUN pip3 install html5validator
RUN export DEBIAN_FRONTEND=noninteractive \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
|