Skip to content

Commit

Permalink
Merge pull request #189 from hiddenSymmetries/mbk/docker_mpich
Browse files Browse the repository at this point in the history
Use mpich for docker container
  • Loading branch information
mbkumar authored Jan 18, 2022
2 parents d2bf570 + 14b97cc commit 9ae53ed
Showing 1 changed file with 42 additions and 6 deletions.
48 changes: 42 additions & 6 deletions ci/Dockerfile.ubuntu
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,43 @@
# ===================================
FROM ubuntu:20.04 as intermediate

RUN apt update && DEBIAN_FRONTEND=noninteractive apt-get install -y python3-dev python3-pip python3-virtualenv build-essential gfortran openmpi-bin libopenmpi-dev libnetcdf-dev libnetcdff-dev libopenblas-dev libscalapack-openmpi-dev libhdf5-dev libhdf5-serial-dev git m4 libfftw3-dev libboost-all-dev libgl1-mesa-dev
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential gfortran git m4 wget cmake \
libopenblas-dev libfftw3-dev libhdf5-dev libhdf5-serial-dev libnetcdf-dev libnetcdff-dev libgl1-mesa-dev \
python3-dev python3-pip python3-venv

RUN mkdir -p /src
# Install mpich manually
WORKDIR /src
ARG mpich=3.3
ARG mpich_prefix=mpich-$mpich

RUN \
wget https://www.mpich.org/static/downloads/$mpich/$mpich_prefix.tar.gz && \
tar xvzf $mpich_prefix.tar.gz && \
cd $mpich_prefix && \
./configure && \
make -j 4 && \
make install && \
make clean && \
cd .. && \
rm -rf $mpich_prefix

RUN /sbin/ldconfig

RUN \
git clone --depth 1 https://github.com/Reference-ScaLAPACK/scalapack.git /src/scalapack && \
cd /src/scalapack && \
CC=mpicc F77=mpif77 FC=mpif90 CXX=mpicxx cmake -DBUILD_SHARED_LIBS=ON -S . -B build && \
cd build && \
make -j 4 && \
cmake --install . && \
cd ../.. && \
rm -rf scalapack

RUN /sbin/ldconfig

RUN python3 -m pip install wheel
RUN virtualenv /venv/
RUN python3 -m venv /venv/

RUN /venv/bin/pip install -U pip
RUN /venv/bin/python -m pip install numpy scipy jax jaxlib f90nml mpi4py jupyter notebook ipython qsc sympy scikit-build ninja "pybind11[global]" cmake
Expand Down Expand Up @@ -43,15 +74,20 @@ FROM ubuntu:20.04
LABEL maintainer.name="Bharat Medasani" \
maintainer.email="mbkumar.at.gmail" \
developers="Hidden Symmetries Team" \
version="0.06" \
version="0.07" \
description="Docker file for simsopt container based on ubuntu image"

RUN apt update && DEBIAN_FRONTEND=noninteractive apt-get install -y python3-dev python3-virtualenv openmpi-bin libnetcdf-dev libnetcdff-dev libopenblas-dev libscalapack-openmpi-dev libhdf5-openmpi-dev m4 libfftw3-dev libgl1-mesa-dev libopenblas-dev vim emacs nano git
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y m4 vim emacs nano git wget \
libfftw3-dev libopenblas-dev libhdf5-serial-dev libnetcdf-dev libnetcdff-dev libgl1-mesa-dev \
python3-dev python3-venv

COPY --from=intermediate /venv /venv
COPY --from=intermediate /usr/local /usr/local
RUN /sbin/ldconfig
COPY entrypoint.sh /venv/bin

#env PATH=$PATH:/venv/bin
ENV OMPI_ALLOW_RUN_AS_ROOT=1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
# ENV OMPI_ALLOW_RUN_AS_ROOT=1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
ENTRYPOINT ["bash", "/venv/bin/entrypoint.sh"]
CMD ["bash"]

0 comments on commit 9ae53ed

Please sign in to comment.