이미지를 플랫폼 내장 레지스트리에 등록하는 방법은 두 가지.

방법사용하는 경우필요한 것
tar 반입 (화면)협력사가 파일로 전달한 경우. 반입하는 PC 에는 Docker 불필요브라우저, 개발DEVELOPER · OPERATOR · ADMIN
docker push이미지를 빌드한 PC 에서 플랫폼 레지스트리에 직접 접근할 수 있는 경우Docker, 컨테이너 토큰

결과는 동일. 이미지는 <레지스트리 호스트>/<테넌트>/<리포지토리>:<태그> 로 등록되고, 학습 파드가 이 주소에서 이미지를 내려받음.

아키텍처와 크기

  • 이미지는 학습 노드와 같은 아키텍처여야 함. 플랫폼은 서버 설정 GEO_MLOPS_SUPPORTED_ARCHITECTURES(기본 amd64,arm64)에 있는 linux/<아키텍처> 이미지만 반입하고, 학습 파드는 이미지와 같은 아키텍처의 노드에만 배치. 노드 아키텍처는 운영자에게 확인(요구 사항). 다른 아키텍처의 컴퓨터에서 빌드하면 docker build --platform linux/amd64 … 처럼 대상 지정.
  • CUDA 휠을 포함하면 6~8 GB 인 경우가 많음. 반입 상한은 기본 32 GiB.

tar 로 전달하기 (협력사 측)

docker build -t example/mnist-trainer:v1 .
docker save example/mnist-trainer:v1 | gzip > mnist-trainer-v1.tar.gz   # 태그를 반드시 포함한다
sha256sum mnist-trainer-v1.tar.gz > mnist-trainer-v1.tar.gz.sha256
항목내용
형식docker save 산출물. Docker 버전에 따라 docker-archive 또는 OCI layout 이며, 둘 다 지원.
압축.tar · .tar.gz · .tgz 지원. gzip 사용.
이미지 개수아카이브 하나에 이미지 하나. docker save a b 처럼 여러 개를 담으면 거절.
이름아카이브에 기록된 이름을 그대로 사용. 태그 없이 이미지 ID 로 저장하면 이름이 없으므로 반입하는 측에서 지정 필요.
체크섬.sha256 을 함께 전달하면 전송 중 손상 검출 가능

예제 MNIST 이미지(CPU 전용 torch)는 압축 시 약 520 MB.

tar 반입하기 (플랫폼 측)

  1. 왼쪽 메뉴 컨테이너 레지스트리 를 열고 오른쪽 위 이미지 반입 클릭.
  2. ① 전달받은 .tar.gz 선택. ② 리포지토리·태그는 이름을 변경하는 경우에만 입력. 입력하지 않으면 아카이브의 이름(example/mnist-trainer:v1) 사용. 테넌트 접두사(demo/)는 서버가 붙이므로 입력하지 않음. ③ 반입 클릭.
    이미지 반입: ① docker save 로 만든 .tar/.tar.gz ② 이름을 변경하는 경우에만 입력 ③ 반입
  3. 파일이 청크로 나뉘어 업로드. 전송이 끝나면 서버가 조립 → 검사 → 레이어 등록을 이어서 수행. 전송 중에 창을 닫으면 업로드 중단. 전송이 끝난 뒤에는 창을 닫아도 서버 측 작업 계속. 작업이 끝나면 이미지 반입 카드에 완료와 최종 주소 표시.
    반입 이력: 조립·검사·레이어 등록 후 '완료' 상태와 레지스트리 주소 표시

반입이 실패하면 카드에 사유 표시(아키텍처 불일치, docker save 산출물이 아님 등). 위 화면의 경고(skipped an attestation manifest …)는 최신 Docker 가 함께 저장하는 서명 증명 매니페스트를 건너뛰었다는 뜻이며, 이미지 사용에는 영향 없음.

docker push 로 업로드하기

  1. 계정 설정 → 컨테이너 토큰 에서 토큰 발급. 토큰은 발급 직후 한 번만 표시되며, 호스트와 사용자명이 채워진 docker login 명령도 함께 표시. push 에는 develop 권한(DEVELOPER·OPERATOR·ADMIN) 필요.
    컨테이너 토큰 발급 직후: ① 이때 한 번만 표시되는 토큰 ② 호스트가 채워진 docker login 명령
  2. 로그인 후 태그를 지정해 push.
echo "<발급한 토큰>" | docker login mlops.example.com -u demo --password-stdin
docker tag example/mnist-trainer:v1 mlops.example.com/demo/example/mnist-trainer:v1
docker push mlops.example.com/demo/example/mnist-trainer:v1
  • 사용자명은 임의로 지정 가능. 토큰이 비밀번호이고, 테넌트는 토큰에 고정.
  • 경로의 첫 부분에는 테넌트 코드(소문자) 지정. 화면에서 반입한 이미지와 같은 형식.
  • 레지스트리가 HTTP 로만 제공되면 Docker 데몬에 insecure 설정 필요. 방법은 컨테이너 레지스트리 직접 사용 참고.

다음: 마법사에서 선택할 수 있도록 등록하기

2026-10-02 기준 플랫폼으로 작성

© MLOps Central Platform