4.11. 언더클라우드 컨테이너 레지스트리

Red Hat Enterprise Linux 8.2에는 Docker Registry v2를 설치한 docker-distribution 패키지가 더 이상 포함되지 않습니다. 호환성과 동일한 수준의 기능을 유지하기 위해 director 설치에서 image-serve라는 vhost로 Apache 웹 서버를 생성하여 레지스트리를 제공합니다. 이 레지스트리는 SSL이 비활성화된 포트 8787/TCP도 사용합니다. Apache 기반 레지스트리는 컨테이너화되지 않으므로, 다음 명령을 실행하여 레지스트리를 다시 시작해야 합니다.

$ sudo systemctl restart httpd

컨테이너 레지스트리 로그는 다음 위치에서 찾을 수 있습니다.

  • /var/log/httpd/image_serve_access.log
  • /var/log/httpd/image_serve_error.log.

이미지 내용은 /var/lib/image-serve에서 제공됩니다. 이 위치에서는 특정 디렉터리 레이아웃 및 apache 구성을 사용하여 레지스트리 REST API의 풀 기능을 구현합니다.

Apache 기반 레지스트리는 podman pushbuildah push 명령을 지원하지 않으므로 기존 방법으로는 컨테이너 이미지를 푸시할 수 없습니다. 배포 중에 이미지를 수정하려면 ContainerImagePrepare 매개변수와 같은 컨테이너 준비 워크플로우를 사용합니다. 컨테이너 이미지를 관리하려면 다음과 같은 컨테이너 관리 명령을 사용하십시오.

sudo openstack tripleo container image list
레지스트리에 저장된 모든 이미지를 나열합니다.
sudo openstack tripleo container image show
레지스트리에 있는 특정 이미지의 메타데이터를 표시합니다.
sudo openstack tripleo container image push
원격 레지스트리에서 언더클라우드 레지스트리로 이미지를 푸시합니다.
sudo openstack tripleo container image delete
레지스트리에서 이미지를 삭제합니다.
참고

모든 컨테이너 이미지 관리 명령은 sudo 수준 권한을 사용하여 실행해야 합니다.