/
Dockerfile
110 lines (101 loc) · 2.08 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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
FROM rockylinux:8
LABEL maintainer="Mark Grondona <mgrondona@llnl.gov>"
# Enable PowerTools for development packages
RUN yum -y update \
&& dnf -y install 'dnf-command(config-manager)' \
&& yum config-manager --set-enabled powertools \
&& yum -y update \
# Enable EPEL
&& yum -y install epel-release \
# Utilities
&& yum -y install \
wget \
man-db \
less \
git \
sudo \
munge \
ccache \
lua \
valgrind \
jq \
which \
file \
vim \
patch \
diffutils \
# Compilers, autotools
pkgconfig \
libtool \
autoconf \
automake \
gcc \
gcc-c++ \
make \
cmake \
bison \
flex \
# Python
python36 \
python3-devel \
python3-cffi \
python3-six \
python3-yaml \
python3-jsonschema \
python3-sphinx \
# Development dependencies
libsodium-devel \
zeromq-devel \
jansson-devel \
munge-devel \
ncurses-devel \
lz4-devel \
sqlite-devel \
libuuid-devel \
hwloc-devel \
lua-devel \
valgrind-devel \
libs3-devel \
systemd-devel \
libarchive-devel \
pam-devel \
# Other deps
perl-Time-HiRes \
lua-posix \
libfaketime \
cppcheck \
enchant \
aspell \
aspell-en \
glibc-langpack-en \
hwloc \
&& yum clean all
# Set default /usr/bin/python to python3
RUN alternatives --set python /usr/bin/python3
# Install caliper by hand for now:
RUN mkdir caliper \
&& cd caliper \
&& wget -O - https://github.com/LLNL/Caliper/archive/v1.7.0.tar.gz | tar xvz --strip-components 1 \
&& mkdir build \
&& cd build \
&& cmake .. -DCMAKE_INSTALL_PREFIX=/usr \
&& make -j 4 \
&& make install \
&& cd ../.. \
&& rm -rf caliper
# Install mvapich2
RUN mkdir mvapich2 \
&& cd mvapich2 \
&& wget -O - http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.3.6.tar.gz | tar xvz --strip-components 1 \
&& ./configure --with-device=ch3:sock --disable-fortran --prefix=/usr \
&& make -j4 \
&& make install \
&& cd .. \
&& rm -rf mvapich2
# Install lcov
RUN rpm --nodeps -i http://downloads.sourceforge.net/ltp/lcov-1.14-1.noarch.rpm
# Install Python 3 coverage
RUN pip3 install coverage
ENV LANG=C.UTF-8
RUN printf "LANG=C.UTF-8" > /etc/locale.conf
COPY config.site /usr/share/config.site