-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathDockerfile_simgrid_v3_12
46 lines (30 loc) · 1.48 KB
/
Dockerfile_simgrid_v3_12
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
#FROM ubuntu:trusty
FROM debian:12
MAINTAINER Henri Casanova <[email protected]>
RUN apt-get update
# install languages
RUN apt-get -y install g++
# build environment
RUN apt-get -y install wget
RUN apt-get -y install cmake
# experimental environment
RUN apt-get install -y time
# install doxygen
RUN apt-get -y install doxygen
# install editor
RUN apt-get -y install vim
# install boost
#RUN apt-get -y install libboost-all-dev
RUN apt-get -y install libbz2-dev
RUN wget --no-check-certificate https://sourceforge.net/projects/boost/files/boost/1.54.0/boost_1_54_0.tar.gz && tar -xzf boost_1_54_0.tar.gz && cd boost_1_54_0 && ./bootstrap.sh && ./b2 ; ./b2 install ; cd .. && /bin/rm -rf boost_1_54_0
# install SimGrid
RUN apt-get -y install fig2dev
RUN apt-get -y install perl-modules
RUN wget --no-check-certificate https://framagit.org/simgrid/simgrid/-/archive/v3_12/simgrid-v3_12.tar.gz && tar -xf simgrid-v3_12.tar.gz && cd simgrid-v3_12 && head -200 ./src/simix/smx_private.h > /tmp/smx_private.h && echo "#undef SIGSTKSZ" >> /tmp/smx_private.h && echo "#define SIGSTKSZ 20480" >> /tmp/smx_private.h && tail -135 ./src/simix/smx_private.h >> /tmp/smx_private.h && /bin/mv /tmp/smx_private.h ./src/simix/smx_private.h && mkdir build && cd build && cmake -Denable_SMPI=off .. && make -j12 && make install
# Add user
RUN apt-get install -y sudo
RUN useradd -ms /bin/bash simgrid
RUN adduser simgrid sudo
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
USER simgrid
WORKDIR /home/simgrid