-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathDockerfile_base
33 lines (24 loc) · 1.1 KB
/
Dockerfile_base
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
FROM coqorg/coq:8.11.2-ocaml-4.11.2-flambda
# the opam 2.0.9 internal solver gives us troubles with time outs
RUN sudo apt-get update --yes
RUN sudo apt-get --yes install mccs
# conda + pythnon 3.9
RUN curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -o \
Miniconda3-latest-Linux-x86_64.sh && sh Miniconda3-latest-Linux-x86_64.sh -b -f
ENV HOME="/home/coq"
ENV CONDA_EXE="${HOME}/miniconda3/bin/conda"
RUN $CONDA_EXE create -n python3.9 python=3.9 -y
ENV CONDA_PREFIX="${HOME}/miniconda3/envs/python3.9"
ENV CONDA_PYTHON_EXE="${HOME}/miniconda3/bin/python"
RUN echo 'PATH=$CONDA_PREFIX/bin:$PATH' >> .profile
# apt-get level project dependencies
RUN sudo apt-get update
RUN sudo apt-get --yes install graphviz capnproto libcapnp-dev pkg-config libev-dev libxxhash-dev
# opam level project dependencies
COPY --chown=coq:coq . coq-tactician-api
USER coq
WORKDIR /home/coq/coq-tactician-api
RUN eval $(opam env) \
&& opam repo add coq-extra-dev https://coq.inria.fr/opam/extra-dev -y
RUN eval $(opam env) \
&& opam install -y -t --deps-only --solver=mccs ./coq-tactician-api.opam