Public | Automated Build

Last pushed: 14 days ago
Dockerfile
FROM python:3.5-slim MAINTAINER Alberto Madonna <madonna@cscs.ch> LABEL com.pyfr.version="1.5.0" LABEL com.python.version="3.5" # Install system dependencies RUN apt-get update && apt-get install -y --no-install-recommends \ wget \ unzip \ perl-modules \ make \ gfortran \ libopenblas-dev \ liblapack-dev \ libhdf5-dev \ libmetis-dev && \ rm -rf /var/lib/apt/lists/* # Label image so that nvidia-docker will source driver libraries from host LABEL com.nvidia.volumes.needed="nvidia_driver" # Install CUDA Toolkit 7.5 ENV CUDA_VERSION 7.5 LABEL com.nvidia.cuda.version="7.5" RUN wget -q -O cuda_7.5.run http://developer.download.nvidia.com/compute/cuda/7.5/Prod/local_installers/cuda_7.5.18_linux.run && \ chmod +x cuda_7.5.run && \ ./cuda_7.5.run --silent --toolkit && \ rm cuda_7.5.run /tmp/cuda?install* && \ rm -rf /usr/local/cuda/doc \ /usr/local/cuda/extras \ /usr/local/cuda/libnsight \ /usr/local/cuda/libnvvp \ /usr/local/cuda/jre \ /usr/local/cuda/include/n* \ /usr/local/cuda/include/thrust \ /usr/local/cuda/lib64/libcufft* \ /usr/local/cuda/lib64/libcuinj* \ /usr/local/cuda/lib64/libcusolver* \ /usr/local/cuda/lib64/libcusparse* \ /usr/local/cuda/lib64/libnpp* \ /usr/local/cuda/lib64/libnvblas* \ /usr/local/cuda/lib64/libnvrtc* \ /usr/local/cuda/lib64/libcufft* \ /usr/local/cuda/lib64/libnvToolsExt* \ /usr/local/cuda/lib64/libOpenCL* \ /usr/local/cuda/lib64/*.a \ /usr/local/cuda/samples \ /usr/local/cuda/share \ /usr/local/cuda/tools # Configure environment for CUDA RUN echo "/usr/local/cuda/lib" >> /etc/ld.so.conf.d/cuda.conf && \ echo "/usr/local/cuda/lib64" >> /etc/ld.so.conf.d/cuda.conf && \ ldconfig ENV PATH /usr/local/cuda/bin:${PATH} ENV LD_LIBRARY_PATH /usr/local/nvidia/lib:/usr/local/nvidia/lib64:${LD_LIBRARY_PATH} # Install MPICH 3.1.4 RUN wget -q http://www.mpich.org/static/downloads/3.1.4/mpich-3.1.4.tar.gz && \ tar xvf mpich-3.1.4.tar.gz && \ cd mpich-3.1.4 && \ ./configure --disable-fortran --prefix=/usr && \ make -j$(nproc) && \ make install && \ cd .. && \ rm -rf mpich-3.1.4.tar.gz mpich-3.1.4 && \ ldconfig # Create new user RUN useradd docker WORKDIR /home/docker # Install Python dependencies RUN pip3 install numpy>=1.8 \ pytools>=2016.2.1 \ mako>=1.0.0 \ mpi4py>=2.0 && \ pip3 install pycuda>=2015.1 \ h5py>=2.6.0 && \ wget -q -O GiMMiK-2.1.tar.gz https://github.com/vincentlab/GiMMiK/archive/v2.1.tar.gz && \ tar -xzf GiMMiK-2.1.tar.gz && \ cd GiMMiK-2.1 && \ python3 setup.py install && \ cd .. && \ rm -rf GiMMiK-2.1.tar.gz GiMMiK-2.1 # Set base directory for pyCUDA cache ENV XDG_CACHE_HOME /tmp # Install PyFR RUN wget -q -O PyFR-1.5.0.zip http://www.pyfr.org/download/PyFR-1.5.0.zip && \ unzip -qq PyFR-1.5.0.zip && \ cd PyFR-1.5.0 && \ python3 setup.py install && \ cd .. && \ rm -rf PyFR-1.5.0.zip PyFR-1.5.0 # Cleanup build utilities RUN apt-get purge --auto-remove -y --force-yes wget unzip make perl-modules #ENTRYPOINT ["pyfr"] CMD ["pyfr --help"]
Source Repository