forked from star-bnl/star-prop
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile.star-base-ubuntu18
63 lines (54 loc) · 2.12 KB
/
Dockerfile.star-base-ubuntu18
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
FROM ubuntu:18.04
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /tmp
# Install system packages
COPY docker/packages.ubuntu /tmp/packages
RUN apt-get update -qq \
&& apt-get -y install $(cat packages) \
&& apt-get clean \
&& Rscript -e 'install.packages(c("RInside","Rcpp"), repos="https://cran.r-project.org")' \
&& localedef -i en_US -f UTF-8 en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/* /tmp/*
# Install python3.7 from a PPA and link python3 to it
RUN apt update \
&& apt install -y software-properties-common \
&& add-apt-repository ppa:deadsnakes/ppa \
&& apt update \
&& apt install -y python3.7 \
&& update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 1
# Install extra python modules used by the STAR software
RUN pip install pyparsing && pip3 install requests
# Install newer version of CMake
RUN curl https://cmake.org/files/v3.14/cmake-3.14.6.tar.gz | tar -xz -C /tmp \
&& cd /tmp/cmake-3.14.6 && ./bootstrap && make -j $(nproc) && make install \
&& rm -fr /tmp/*
# Install ROOT5
RUN curl https://root.cern.ch/download/root_v5.34.38.source.tar.gz | tar -xz -C /tmp \
&& mv /tmp/root /tmp/root-5-34-38 \
&& mkdir /tmp/root-build && cd /tmp/root-build \
&& cmake /tmp/root-5-34-38 \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-Drpath=ON \
-Dtable=ON \
-Dpythia6=ON \
-Dpythia6_nolink=ON \
-Dvc=ON \
-Dkrb5=OFF \
&& make -j $(nproc) \
&& make install \
&& rm -fr /tmp/*
# Install CERNLIB
COPY patches/cernlib_2006.patch scripts/build_cernlib.sh scripts/gdrive.py /tmp/
RUN mkdir /cern && cd /cern \
&& (curl -s -f https://cernlib.web.cern.ch/cernlib/download/2006_source/tar/2006_src.tar.gz || \
python3 /tmp/gdrive.py 10eu5fwq_jDMrl0ludu2keQwamBam0dc7) | tar -xz -C /cern \
&& patch -p0 < /tmp/cernlib_2006.patch \
&& /tmp/build_cernlib.sh \
&& rm -fr /cern/2006/src /cern/2006/log /cern/2006/build /tmp/*
# Install Eigen 3.3.4
WORKDIR /tmp
RUN curl https://bitbucket.org/eigen/eigen/get/3.3.4.tar.gz | tar -xz -C /tmp \
&& mkdir /tmp/eigen-build && cd /tmp/eigen-build \
&& cmake /tmp/eigen-eigen-5a0156e40feb -DCMAKE_INSTALL_PREFIX=/usr/local \
&& make install \
&& rm -fr /tmp/*