FROM ubuntu:24.04
# aptの更新など
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install -y wget curl git htop vim
# .bashrcの編集
RUN sed -i 1iforce_color_prompt=yes /root/.bashrc
RUN echo alias la="'ls -lah'\n" >> /root/.bashrc
# CUDAのインストール
RUN wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
RUN dpkg -i cuda-keyring_1.1-1_all.deb
## ↓Ubuntu23.04以降でCUDAのインストールに必要なコマンド
RUN echo "deb http://archive.ubuntu.com/ubuntu/ jammy universe" >> /etc/apt/sources.list.d/jammy.list
RUN echo "Package: *\nPin: release n=jammy\nPin-Priority: -10\n\nPackage: libtinfo5\nPin: release n=jammy\nPin-Priority: 990" >> /etc/apt/preferences.d/pin-jammy
## ↑Ubuntu23.04以降でCUDAのインストールに必要なコマンド
RUN apt-get update
RUN apt-get -y install cuda-toolkit-12-5
RUN rm cuda-keyring_1.1-1_all.deb
RUN echo "export PATH=/usr/local/cuda-12.5/bin\${PATH:+:\${PATH}}" >> /root/.bashrc
RUN echo "export LD_LIBRARY_PATH=/usr/local/cuda-12.5/lib64:\${LD_LIBRARY_PATH:+:\${LD_LIBRARY_PATH}}\n" >> /root/.bashrc
# pyenvのインストール
RUN apt-get install -y build-essential libssl-dev libffi-dev libncurses5-dev zlib1g zlib1g-dev libreadline-dev libbz2-dev libsqlite3-dev make gcc liblzma-dev python3-tk tk-dev
RUN curl https://pyenv.run | bash
RUN echo "export PYENV_ROOT=\"\$HOME/.pyenv\"" >> /root/.bashrc
RUN echo "export PATH=\"\$PYENV_ROOT/bin:\$PATH\"" >> /root/.bashrc
RUN echo "eval \"\$(pyenv init -)\"" >> /root/.bashrc
RUN echo "eval \"\$(pyenv virtualenv-init -)\"" >> /root/.bashrc
# SSH接続のための設定
## "password"のところを任意のパスワードへ変更
RUN apt-get install -y openssh-server
RUN mkdir /var/run/sshd
RUN echo 'root:password' | chpasswd
RUN echo '\nPermitRootLogin yes' >> /etc/ssh/sshd_config
## runしたときにSSH接続を開始
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
## コマンド
# docker build -f dockerfile -t ubuntu:24.04-cuda12.5-ssh .
# docker run -itd --gpus all --name sandbox ubuntu:24.04-cuda12.5-ssh
# docker run -itd --gpus all --name sandbox -p 10000:22 ubuntu:24.04-cuda12.5-ssh
# ssh root@127.0.0.1 -p 10000
(自分用dockerfile)Ubuntu24.04+CUDA12.5+pyenv+SSH
Last updated at Posted at 2024-12-27
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme