forked from INRIA/zelus
-
Notifications
You must be signed in to change notification settings - Fork 0
/
zelus.docker
35 lines (27 loc) · 1.1 KB
/
zelus.docker
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
############################################################
# Dockerfile to build Zelus docker image
# Build with `docker build -t zelus -f zelus.docker .`
# Run with `docker run -ti --rm -v `pwd`:/home/opam/cwd zelus bash`
# For graphics:
# - First run `xhost + 127.0.0.1`
# - Add option `-e DISPLAY=host.docker.internal:0` to `docker run`
############################################################
FROM ocaml/opam2:4.11
USER opam
RUN sudo apt-get -y update && \
sudo apt-get -y install \
git build-essential m4 unzip pkg-config libpcre3-dev mingw-w64 gcc wget cmake gtk2.0
WORKDIR /home/opam
RUN wget -nv --show-progress --progress=bar:force:noscroll https://computing.llnl.gov/projects/sundials/download/sundials-3.2.1.tar.gz && \
tar xzf sundials-3.2.1.tar.gz && \
mkdir sundials-3.2.1-build && \
cd sundials-3.2.1-build && \
cmake ../sundials-3.2.1 && \
make -j && \
sudo make install
RUN opam update && \
opam install -y \
graphics ocamlfind lablgtk sundialsml menhir
COPY --chown=opam . /home/opam/zelus
WORKDIR /home/opam/zelus
RUN opam install . --working-dir