2.5. 수정된 수평 이미지 생성
사용자 정의 테마가 준비되면 테마를 사용하는 새 컨테이너 이미지를 생성할 수 있습니다.
프로세스
다음 예와 같이
Dockerfile
을 사용하여 원래수평
이미지를 기반으로 새 컨테이너 이미지를 생성합니다.FROM registry.redhat.io/rhosp-rhel8/openstack-horizon MAINTAINER Acme LABEL name="rhosp-rhel8/openstack-horizon-mytheme" vendor="Acme" version="0" release="1" COPY mytheme /usr/share/openstack-dashboard/openstack_dashboard/themes/mytheme COPY _12_mytheme_theme.py /etc/openstack-dashboard/local_settings.d/_12_mytheme_theme.py RUN sudo chown apache:apache /etc/openstack-dashboard/local_settings.d/_12_mytheme_theme.py
-
이 파일을
horizon-themes
디렉터리에Dockerfile
로 저장합니다. Dockerfile을 사용하여 새 이미지를 생성합니다.
$ sudo podman build . -t "172.24.10.10:8787/rhosp-rhel8/openstack-horizon:0-5" --log-level debug
t
옵션의 이름을 지정하고 결과 이미지에 태그를 지정합니다. 다음 구문을 사용합니다.[LOCATION]/[NAME]:[TAG]
- 위치
- 일반적으로 오버클라우드에서 이미지를 가져오는 데 사용하는 컨테이너 레지스트리의 위치입니다. 이 경우 이 이미지를 언더클라우드의 컨테이너 레지스트리로 푸시하므로 이를 언더클라우드 IP 및 포트로 설정합니다.
- NAME
-
일관성을 위해 일반적으로 원래 컨테이너 이미지 뒤에 테마 이름이 뒤에 오는 것과 동일합니다. 이 경우
rhosp-rhel8/openstack-horizon-mytheme
입니다. - TAG
-
이미지의 태그입니다. Red Hat은 이 태그의 기준으로
버전
및릴리스
레이블을 사용합니다. 이 이미지의 새 버전을 생성하는 경우릴리스
가 증가합니다(예:0-2
).
이미지를 언더클라우드의 컨테이너 레지스트리로 푸시합니다.
$ sudo openstack tripleo container image push --local 172.24.10.10:8787/rhosp-rhel8/openstack-horizon:0-5
이미지가 로컬 레지스트리에 업로드되었는지 확인합니다.
[stack@director horizon-themes]$ curl http://172.24.10.10:8787/v2/_catalog | jq .repositories[] | grep -i hori "rhosp-rhel8/openstack-horizon" [stack@director horizon-themes]$ [stack@director ~]$ sudo openstack tripleo container image list | grep hor | docker://director.ctlplane.localdomain:8787/rhosp-rhel8/openstack-horizon:16.0-84 | docker://director.ctlplane.localdomain:8787/rhosp-rhel8/openstack-horizon:0-5 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<,Uploaded [stack@director ~]$
중요
Red Hat OpenStack Platform을 업데이트하거나 업그레이드하는 경우 새 Horizon
이미지에 주제를 다시 적용하고 수정된 이미지의 새 버전을 언더클라우드로 푸시해야 합니다.