3장. 컨테이너 레지스트리 작업
컨테이너 이미지 레지스트리는 컨테이너 이미지 및 컨테이너 기반 애플리케이션 아티팩트를 저장하기 위한 리포지토리 또는 리포지토리 컬렉션입니다. /etc/containers/registries.conf
파일은 Podman, Buildah, Skopeo와 같은 다양한 컨테이너 툴에서 사용할 수 있는 컨테이너 이미지 레지스트리가 포함된 시스템 전체 구성 파일입니다.
컨테이너 툴에 제공된 컨테이너 이미지가 완전히 검증되지 않은 경우 컨테이너 툴은 registries.conf
파일을 참조합니다. registries.conf
파일 내에서 짧은 이름에 대한 별칭을 지정하여 관리자가 완전히 인증되지 않은 경우 이미지를 가져오는 위치를 완전히 제어할 수 있습니다. 예를 들어 podman pull example.com/example_image
명령은 registries.conf 파일에
지정된 대로 example.com
레지스트리에서 로컬 시스템으로 컨테이너 이미지를 가져옵니다.
3.1. 컨테이너 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
컨테이너 레지스트리는 컨테이너 이미지 및 컨테이너 기반 애플리케이션 아티팩트를 저장하기 위한 리포지토리 또는 리포지토리 컬렉션입니다. Red Hat에서 제공하는 레지스트리는 다음과 같습니다.
- registry.redhat.io (인증 필요)
- registry.access.redhat.com (인증 필요 없음)
- registry.connect.redhat.com ( Red Hat Partner Connect 프로그램 이미지 유지)
Red Hat 자체 컨테이너 레지스트리와 같은 원격 레지스트리에서 컨테이너 이미지를 가져와 로컬 시스템에 추가하려면 podman pull
명령을 사용합니다.
podman pull <registry>[:<port>]/[<namespace>/]<name>:<tag>
# podman pull <registry>[:<port>]/[<namespace>/]<name>:<tag>
여기서 < registry>[:<port>]/[<namespace>/]<name>:<tag
>는 컨테이너 이미지의 이름입니다.
예를 들어 registry.redhat.io/ubi10/ubi
컨테이너 이미지는 다음과 같습니다.
-
레지스트리 서버(
registry.redhat.io
) -
네임스페이스(
ubi10
) -
이미지 이름(
ubi
)
동일한 이미지의 여러 버전이 있는 경우 태그를 추가하여 이미지 이름을 명시적으로 지정합니다. 기본적으로 Podman은 :latest
태그를 사용합니다(예: ubi10/ubi:latest
).
일부 레지스트리는 < namespace >를 사용하여 다른 사용자 또는 조직에서 소유한 동일한 < name >의 이미지를 구분합니다. 예를 들면 다음과 같습니다.
네임스페이스 | 예(<namespace> /<name>) |
---|---|
조직 |
|
로그인(사용자 이름) |
|
role |
|
레지스트리, 네임스페이스, 이미지 이름, 태그 등 정규화된 이미지 이름을 사용합니다. 짧은 이름을 사용하는 경우 항상 스푸핑의 고유 한 위험이 있습니다. 알 수 없거나 익명 사용자가 임의의 이름으로 계정을 만들 수 없는 레지스트리(즉, 신뢰할 수 있는 레지스트리)를 추가합니다. 예를 들어 사용자가 example .registry.com 레지스트리에서 예제
컨테이너 이미지를 가져오려고 합니다. example.registry.com
이 검색 목록에서 첫 번째가 아닌 경우 공격자는 검색 목록의 이전 레지스트리에 다른 예제 이미지를 배치할 수 있습니다. 사용자가 실수로 의도한 콘텐츠가 아닌 공격자 이미지를 가져와서 실행합니다.
registry.redhat.io로의 전환에 대한 자세한 내용은 Red Hat Container Registry Authentication 을 참조하십시오. registry.redhat.io에서 컨테이너를 가져오려면 먼저 RHEL 서브스크립션 인증 정보를 사용하여 인증해야 합니다.