-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathDockerfile
64 lines (51 loc) · 1.81 KB
/
Dockerfile
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
FROM ubuntu:18.04
MAINTAINER anton surv (antsurv@protonmail.com)
ENV TAG v.1.0
ENV DEBIAN_FRONTEND=noniteractive
RUN apt-get update && apt-get install -y sudo wget bash cmake make git gcc g++ gfortran libboost-all-dev && \
useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo && \
cd /home/docker && \
apt-get install -y libarpack2-dev libarpack++2-dev libcgal-dev libdb-dev libf2c2-dev libglib2.0-dev libgmp3-dev libgtk2.0-dev libgtkgl2.0-dev libgtkglextmm-x11-1.2-dev libgtkmm-2.4-dev libgts-bin libgts-dev liblapack-dev libmpfr-dev libmysql++-dev libplot-dev libsqlite3-dev libsuperlu-dev libsuitesparse-dev libvtk6-dev libx11-dev libmetis-dev && \
apt-get install -y cimg-dev petsc-dev tcl-dev && \
apt-get install -y python-vtk6 python-scipy python-sympy python-matplotlib python-pandas python-sklearn python-pip && \
apt-get install -y gnuplot bc && \
apt-get clean && \
pip install mayavi ezdxf dxfwrite pycairo && \
rm -rf build_xc && \
mkdir build_xc && \
cd build_xc && \
base_dir=`pwd`&& \
# clone xc_utils and XC
cd $base_dir && \
git clone https://github.com/xcfem/xc_utils/ xc_utils && \
git clone https://github.com/xcfem/xc/ xc && \
# build xc_utils
cd $base_dir && \
mkdir build-xc_utils && \
cd build-xc_utils && \
cmake ../xc_utils/src && \
make -j 2 && \
make install && \
cd $base_dir/xc_utils/python_modules && \
bash ./local_install.sh && \
# build XC
cd $base_dir && \
mkdir build-xc && \
cd build-xc && \
cmake ../xc/src && \
make -j 2 && \
make install && \
cd $base_dir/xc/python_modules && \
bash ./local_install.sh && \
# run unit tests
cd $base_dir/xc_utils/verif && \
bash ./run_verif.sh && \
cd $base_dir/xc/verif && \
bash ./run_verif.sh && \
cd /home/docker
#USER docker
#WORKDIR /home/docker
#ENV HOME /home/docker
VOLUME ["/home/docker"]
#ENTRYPOINT ["python"]
CMD ["bin/bash"]