Ubuntu + Pyenv + Poetry
- 이미지를 빌드하기 위한 도커 엔진이 필요합니다.
- Docker docs를 참고하여 설치해주세요.
- CUDA 사용 환경을 위해 NVIDIA 그래픽 카드와 드라이버, 그리고 Nvidia-docker가 필요합니다.
- NVIDIA install-guide를 참고하여 설치해주세요.
- Docker Hub에서 이미 빌드된 이미지를 사용하실 수 있습니다.
- 다음 명령어로 docker 이미지를 pull할 수 있습니다.
# Tag(base): Ubuntu 22.04 + cuda 11.7.1 + cudnn8 + Pyenv + Poetry
docker pull fkaus5555/dl-world:base-cuda11.7.1-cudnn8-ubuntu22.04
# Tag(dldev): Ubuntu 22.04 + cuda 11.7.1 + cudnn8 + Pyenv + Poetry + jupyter lab + torch + numpy + ...
docker pull fkaus5555/dl-world:dldev-cuda11.7.1-cudnn8-ubuntu22.04
- base 버전은 단순히 Ubuntu, CUDA, cudnn, Pyenv, Poetry로만 이루어져 있습니다. 직접 원하는 파이썬 환경을 구성하고, 사용해보세요.
- dldev 버전은 base 버전 이미지와 pyproject.toml 파일을 기반으로 원하는(재현가능한) 패키지를 설치합니다.
- 본 소스에는 torch(cu116), torchvision(cu116), pandas, numpy, scipy, sklearn, matplotlib, seaborn, jupyter lab, tqdm이 포함되어 있습니다.
# dockerfile이 있는 위치에서 다음 명령어 실행
docker build -t <image-name>:<tag> \
--build-arg USER_NAME=<user-name> \
--build-arg USER_PASSWORD=<user-password> \
--build-arg PYTHON_VERSION=<python-version> .
# dldev 버전은 `entrypoin.sh`을 사용하므로, 최초 실행 시 권한을 변경해주어야 합니다.
chmod +x ./entrypoint.sh && docker build -t <image-name>:<tag> \
--build-arg USER_NAME=<user-name> \
--build-arg USER_PASSWORD=<user-password> \
--build-arg PYTHON_VERSION=<python-version> .
- ❗️ GPU 사용 시
--gpus
설정을 꼭 해주세요. - ❗️
dldev
의 기본 CMD는 jupyter lab 서버를 실행시킵니다(비밀번호 x).- 보안을 위해 비밀번호를 설정하고 싶으시면 여기를 참고해주세요.
docker run -itd --name dl-world \
--gpus all -p <server-port>:<container-jupyter-port> -p <server-port>:<container-ssh-port> \
--restart <always> \
-v <volume-name>:<workspace> \
-w <workspace> \
<image-name>:<tag>