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

Red Hat Enterprise Linux 8에는 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 push 또는 buildah 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 레벨 권한을 사용하여 모든 컨테이너 이미지 관리 명령을 실행해야 합니다.