FROM ubuntu:16.04 USER root ENV CUDA_ARCH_BIN "30 35 37 50 52 60" ENV CUDA_ARCH_PTX "60" #======== #Installing boost and other build tools #================ RUN apt-get update && apt-get install -y --allow-unauthenticated --no-install-recommends \ g++=4:5.3.1-1ubuntu1 \ git \ make=4.1-6 \ ca-certificates=20160104ubuntu1 \ zlib1g-dev=1:1.2.8.dfsg-2ubuntu4.1 \ libssl-dev \ wget \ openssl \ cmake=3.5.1-1ubuntu3 \ libboost-all-dev=1.58.0.1ubuntu1 # Installing NVIDIA Runtime (https://gitlab.com/nvidia/cuda/blob/ubuntu16.04/8.0/runtime/Dockerfile) LABEL com.nvidia.volumes.needed="nvidia_driver" RUN NVIDIA_GPGKEY_SUM=d1be581509378368edeec8c1eb2958702feedf3bc3d17011adbf24efacce4ab5 && \ NVIDIA_GPGKEY_FPR=ae09fe4bbd223a84b2ccfce3f60f4b3d7fa2af80 && \ apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub && \ apt-key adv --export --no-emit-version -a $NVIDIA_GPGKEY_FPR | tail -n +5 > cudasign.pub && \ echo "$NVIDIA_GPGKEY_SUM cudasign.pub" | sha256sum -c --strict - && rm cudasign.pub && \ echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 /" > /etc/apt/sources.list.d/cuda.list ENV CUDA_VERSION 8.0.61 LABEL com.nvidia.cuda.version="${CUDA_VERSION}" ENV CUDA_PKG_VERSION 8-0=$CUDA_VERSION-1 RUN apt-get update && apt-get install -y --allow-unauthenticated --no-install-recommends \ cuda-nvrtc-$CUDA_PKG_VERSION \ cuda-nvgraph-$CUDA_PKG_VERSION \ cuda-cusolver-$CUDA_PKG_VERSION \ cuda-cublas-$CUDA_PKG_VERSION \ cuda-cufft-$CUDA_PKG_VERSION \ cuda-curand-$CUDA_PKG_VERSION \ cuda-cusparse-$CUDA_PKG_VERSION \ cuda-npp-$CUDA_PKG_VERSION \ cuda-cudart-$CUDA_PKG_VERSION && \ ln -s cuda-8.0 /usr/local/cuda && \ rm -rf /var/lib/apt/lists/* RUN echo "/usr/local/cuda/lib64" >> /etc/ld.so.conf.d/cuda.conf && \ ldconfig RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \ echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf ENV PATH /usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} ENV LD_LIBRARY_PATH /usr/local/nvidia/lib:/usr/local/nvidia/lib64 # Installing NVIDIA CUDA Devel (https://gitlab.com/nvidia/cuda/blob/ubuntu16.04/8.0/devel/Dockerfile) LABEL maintainer "NVIDIA CORPORATION " RUN apt-get update && apt-get install -y --allow-unauthenticated --no-install-recommends \ cuda-core-$CUDA_PKG_VERSION \ cuda-misc-headers-$CUDA_PKG_VERSION \ cuda-command-line-tools-$CUDA_PKG_VERSION \ cuda-nvrtc-dev-$CUDA_PKG_VERSION \ cuda-nvml-dev-$CUDA_PKG_VERSION \ cuda-nvgraph-dev-$CUDA_PKG_VERSION \ cuda-cusolver-dev-$CUDA_PKG_VERSION \ cuda-cublas-dev-8-0=8.0.61.2-1 \ cuda-cufft-dev-$CUDA_PKG_VERSION \ cuda-curand-dev-$CUDA_PKG_VERSION \ cuda-cusparse-dev-$CUDA_PKG_VERSION \ cuda-npp-dev-$CUDA_PKG_VERSION \ cuda-cudart-dev-$CUDA_PKG_VERSION \ cuda-driver-dev-$CUDA_PKG_VERSION && \ rm -rf /var/lib/apt/lists/* ENV LIBRARY_PATH /usr/local/cuda/lib64/stubs:${LIBRARY_PATH} LABEL maintainer "NVIDIA CORPORATION " RUN echo "deb http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64 /" > /etc/apt/sources.list.d/nvidia-ml.list ENV CUDNN_VERSION 6.0.21 LABEL com.nvidia.cudnn.version="${CUDNN_VERSION}" RUN apt-get update && apt-get install -y --allow-unauthenticated --no-install-recommends \ libcudnn6=$CUDNN_VERSION-1+cuda8.0 \ libcudnn6-dev=$CUDNN_VERSION-1+cuda8.0 && \ rm -rf /var/lib/apt/lists/* #END OF INSTALLATION OF CUDA