컨테이너 이미지¶
컨테이너 이미지는 인스턴스나 작업이 실제로 실행될 소프트웨어 환경입니다. Python, CUDA, 머신러닝 프레임워크, 시스템 패키지가 이미지에 모두 포함되어 있습니다.
종류¶
이미지는 가시성에 따라 두 가지로 표시됩니다.
PUBLIC — 모든 조직에서 사용. 예:
myaiocean/pytorch:2.1.2-cuda12.1-cudnn8-runtime,myaiocean/tensorflow:2.10.1-gpuPRIVATE — 조직 내부에서 등록한 이미지
처음에는 본인 프레임워크의 PUBLIC 이미지로 시작하세요.
사용 가능한 PUBLIC 이미지 (예시)¶
PyTorch 계열:
myaiocean/pytorch:2.1.2-cuda12.1-cudnn8-runtimemyaiocean/pytorch:2.1.2-cuda11.8-cudnn8-runtimemyaiocean/pytorch:1.13.1-cuda11.6-cudnn8-runtime(그 외 1.8 ~ 2.1.2까지 다양한 CUDA 조합)
TensorFlow 계열:
myaiocean/tensorflow:2.11.0rc2-gpumyaiocean/tensorflow:2.10.1-gpumyaiocean/tensorflow:1.15.5-gpu-py3
전체 목록은 인스턴스/작업 생성 화면의 이미지 드롭다운에서 확인할 수 있습니다.
커스텀 이미지를 만들 때¶
다음 경우에 PRIVATE 이미지를 고려합니다.
PUBLIC에 없는 시스템 패키지가 필요
특정 라이브러리 버전을 고정해 실험을 재현해야 함
매번 인스턴스에서 직접 설치하는 패키지가 5개를 넘음
참고
커스텀 이미지 등록은 조직 관리자만 가능합니다. 사용자는 빌드/푸시한 이미지 주소를 관리자에게 전달해 PRIVATE 이미지로 등록을 요청하세요.
흐름:
로컬에서
Dockerfile작성 (베이스는 PUBLIC 이미지 또는nvidia/cuda:*)컨테이너 레지스트리에 빌드/푸시
이미지 주소를 관리자에게 전달 → 관리자가 조직에 PRIVATE으로 등록
등록 완료 후 인스턴스/작업 생성 시 드롭다운에서 선택
팁
재현성을 위해 requirements.txt 또는 pyproject.toml에 의존성을 고정하고, 이미지 태그도 latest 대신 명시 버전을 쓰세요.
운영 팁¶
큰 데이터셋은 이미지에 넣지 말고 볼륨으로 마운트. 이미지가 커지면 시작이 느려집니다.
CUDA 버전과 머신타입 GPU 호환성 확인. A6000은 CUDA 11+ 권장.
팀 단위 베이스 이미지를 두면 개인이 다시 빌드할 일이 줄어듭니다.