-
Maciej Wielgosz authoredMaciej Wielgosz authored
Dockerfile 1.57 KiB
FROM nvidia/cuda:12.3.1-devel-ubuntu20.04
RUN ln -fs /usr/share/zoneinfo/Europe/Warsaw /etc/localtime
RUN apt-get update && apt-get install -y --no-install-recommends \
git \
language-pack-en-base \
openssh-server \
openssh-client \
python3-pip \
python3-dev \
python3-setuptools \
ssh \
sudo \
vim \
wget \
less \
libglib2.0-0 \
libsm6 \
libxext6 \
libxrender-dev \
libsndfile1 \
&& rm -rf /var/lib/apt/lists/* \
&& python3 -m pip install --no-cache-dir --upgrade \
autopep8 \
doc8 \
docutils \
ipython \
pip \
pylint \
pytest \
rope \
setuptools \
wheel \
torch \
torchvision \
tqdm \
pandas
# OpenSSH configuration
RUN mkdir /var/run/sshd \
&& sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
# Create non-root user
ARG UID=1000
ARG GID=1000
ARG USERNAME=nibio
ENV HOME /home/${USERNAME}
RUN groupadd -g ${GID} ${USERNAME} \
&& useradd -ms /bin/bash -u ${UID} -g ${GID} -G sudo ${USERNAME} \
&& echo "${USERNAME}:${USERNAME}" | chpasswd \
&& mkdir -p ${HOME}/data ${HOME}/.vscode-server ${HOME}/.ssh \
&& chown -R ${USERNAME}:${USERNAME} ${HOME}
# Copy your public key to the container
COPY id_rsa.pub /home/${USERNAME}/.ssh/authorized_keys
RUN chown ${USERNAME}:${USERNAME} /home/${USERNAME}/.ssh/authorized_keys \
&& chmod 600 /home/${USERNAME}/.ssh/authorized_keys
VOLUME [ "${HOME}/data", "${HOME}/.ssh", "${HOME}/.vscode-server"]
# Expose SSH
EXPOSE 22
CMD [ "/usr/sbin/sshd", "-D" ]