This repository provides User Manual for setting up a Docker environment tailored for testing DGTD code.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

61 lines
1.6 KiB

# -----------------------------------------------------------------------------------------
# Step 1 : Import a base image from online repository
# FROM nvidia/cuda:12.5.0-devel-ubuntu22.04
FROM nvidia/cuda:12.4.0-devel-ubuntu22.04
# -----------------------------------------------------------------------------------------
# Step 2 : Suppress Interactive Prompts from Debian
ENV DEBIAN_FRONTEND=noninteractive
# -----------------------------------------------------------------------------------------
# Step 3 : Installing required packages and setting up environment variables
# Update system and install libraries
RUN apt-get update && apt-get install -y \
build-essential \
cmake \
gfortran \
libopenblas-dev \
liblapack-dev \
libfftw3-dev \
libmetis-dev \
libvtk7-dev \
libgomp1 \
libomp-dev \
libblas-dev \
libpthread-stubs0-dev \
&& rm -rf /var/lib/apt/lists/*
# Install Compilers
RUN apt-get update && apt-get install -y g++ gcc
# Install Python and pip
RUN apt-get install -y python3 python3-pip
# Copy current directory to docker image
WORKDIR dgtd
COPY . .
# Install Python dependencies
RUN pip install --no-cache-dir -v -r /dgtd/requirements.txt
# Set Path for libraries and CUDA
ENV CUDA_HOME /usr/local/cuda
ENV LD_LIBRARY_PATH ${CUDA_HOME}/lib64
ENV PATH ${CUDA_HOME}/:bin:${PATH}
ENV CPATH ${CUDA_HOME}/include:${CPATH}
ENV CUDACXX ${CUDA_HOME}/bin/nvcc
# -----------------------------------------------------------------------------------------
# Step 4 : Compiling Program
# WORKDIR ${DIR}/dgtd_gpu
RUN ls -l && mkdir build && cd build && cmake .. && make -j 4
CMD ["bash"]
#ENTRYPOINT ["./runCUDA.sh"]