Dockerfile 3.03 KB
Newer Older
Theo Steininger's avatar
Theo Steininger committed
1
FROM ubuntu:latest
2

Theo Steininger's avatar
Theo Steininger committed
3
4
5
RUN apt-get update
RUN apt-get install -y build-essential python python-pip python-dev git gfortran autoconf gsl-bin libgsl-dev wget unzip

Theo Steininger's avatar
Theo Steininger committed
6
RUN pip install numpy scipy cython astropy ipython==5.3.0
Theo Steininger's avatar
Theo Steininger committed
7
 
8
9
10
11
12
13
14
15
16
17
18
19
RUN mkdir /home/Downloads
WORKDIR /home/Downloads

# CFITSIO
RUN wget http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio_latest.tar.gz && tar xzf cfitsio_latest.tar.gz
WORKDIR cfitsio
RUN ./configure --prefix=/usr/local/ && make && make install 
WORKDIR ..

#FFTW
RUN wget http://www.fftw.org/fftw-3.3.5.tar.gz && tar xzf fftw-3.3.5.tar.gz
WORKDIR fftw-3.3.5
Theo Steininger's avatar
Theo Steininger committed
20
RUN ./configure --enable-threads --enable-openmp --enable-shared --prefix=/usr/local/ && make && make install
21
22
23
WORKDIR ..

#GSL
24
RUN wget http://nl.mirror.babylon.network/gnu/gsl/gsl-2.3.tar.gz && tar xzf gsl-2.3.tar.gz
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
WORKDIR gsl-2.3
RUN ./configure --enable-shared --prefix=/usr/local/ && make && make install
WORKDIR ..
ENV LD_LIBRARY_PATH=/usr/local/lib

#HEALPIX
RUN wget http://downloads.sourceforge.net/project/healpix/Healpix_3.31/Healpix_3.31_2016Aug26.tar.gz && tar xzf Healpix_3.31_2016Aug26.tar.gz 
WORKDIR Healpix_3.31
COPY healpy_config healpy_config
RUN  ./configure < healpy_config && make 
WORKDIR ..
#RUN [ -r /root/.healpix/3_31_Linux/config ] && . /root/.healpix/3_31_Linux/config
ENV HEALPIX_TARGET optimized_gcc 
ENV HEALPIX /home/Downloads/Healpix_3.31

Theo Steininger's avatar
Theo Steininger committed
40
41
42
#healpy
RUN pip install healpy 

43
44
45
46
47
48
49
#(Py)MultiNest
RUN apt-get update && apt-get install -y libblas3 libblas-dev \
					 liblapack3 liblapack-dev \
					 libatlas3-base libatlas-dev \
					 cmake \
					 build-essential \
					 git \
Theo Steininger's avatar
Theo Steininger committed
50
51
					 gfortran\
					 python-tk
52
#RUN apt-get install -y libopenmpi-dev openmpi-bin openmpi-doc
Theo Steininger's avatar
Theo Steininger committed
53
RUN pip install numpy scipy matplotlib progressbar ipython==5.3.0
54
55
56
57
58
59
60
61

RUN git clone https://github.com/JohannesBuchner/MultiNest.git
WORKDIR MultiNest/build
RUN cmake .. && make && make install
WORKDIR ../..

RUN git clone https://github.com/JohannesBuchner/PyMultiNest.git
WORKDIR PyMultiNest
62
RUN python setup.py install
63
64
WORKDIR ..

Theo Steininger's avatar
Theo Steininger committed
65
#mpi4py
66
RUN apt-get install -y libopenmpi-dev openmpi-bin openmpi-doc
Theo Steininger's avatar
Theo Steininger committed
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
RUN pip install mpi4py 

#hdf5
RUN apt-get install -y libhdf5-10 libhdf5-dev libhdf5-openmpi-10 libhdf5-openmpi-dev hdf5-tools

#h5py
RUN wget https://api.github.com/repos/h5py/h5py/tags -O - | grep tarball_url | grep -v rc | head -n 1 | cut -d '"' -f 4 | wget -i - -O h5py.tar.gz
RUN mkdir h5py
RUN tar xzf h5py.tar.gz -C h5py --strip-components=1
WORKDIR h5py
ENV CC=mpicc 
ENV HDF5_DIR=/usr/lib/x86_64-linux-gnu/hdf5/openmpi 
RUN python setup.py configure --mpi 
RUN python setup.py build 
RUN python setup.py install 
WORKDIR ..
83

84
85
86
87
88
#hampy
RUN pip install jupyter pandas

ARG CACHE_DATE=2017-10-31

Theo Steininger's avatar
Theo Steininger committed
89
#NIFTy
90
91
RUN git clone https://gitlab.mpcdf.mpg.de/ift/NIFTy.git -b master
WORKDIR NIFTy
92
RUN python setup.py install
93
94
WORKDIR ..

Theo Steininger's avatar
Theo Steininger committed
95
#Hammurabi
Theo Steininger's avatar
Theo Steininger committed
96
RUN git clone https://bitbucket.org/ricphy/hamx -b flexible_output
Theo Steininger's avatar
Theo Steininger committed
97
98
99
100
101
WORKDIR hamx
RUN cp install/Makefile ./
RUN make -f Makefile
WORKDIR ..

102
103
104
105
106
107
108
#IMAGINE
RUN git clone https://gitlab.mpcdf.mpg.de/ift/IMAGINE.git -b master
WORKDIR IMAGINE
RUN python setup.py install
WORKDIR ..


109
110