7.3. Dockerfile 요구사항
이미지 빌드 프로세스의 일부로 빌드 서비스는 빌드된 이미지를 검사하여 Red Hat 표준을 준수하는지 확인합니다. 프로젝트에 포함할 dockerfile의 기준으로 다음 지침을 사용합니다.
- 기본 이미지는 Red Hat 이미지여야 합니다. Ubuntu, Debian 및 CentOS를 기본으로 사용하는 이미지는 스캐너를 통과하지 않습니다.
필요한 라벨을 구성해야 합니다.
-
name
-
유지 관리자
-
vendor
-
version
-
릴리스
-
summary
-
-
소프트웨어 라이센스를 이미지 내에 텍스트 파일로 포함해야 합니다. 프로젝트 루트의
라이센스
디렉터리에 소프트웨어 라이센스를 추가합니다. -
root
사용자가 아닌 사용자를 구성해야 합니다.
다음 dockerfile 예제에서는 검사에 필요한 정보를 보여줍니다.
FROM registry.redhat.io/rhosp13/openstack-cinder-volume MAINTAINER VenderX Systems Engineering <maintainer@vendorX.com> ###Required Labels LABEL name="rhosp13/openstack-cinder-volume-vendorx-plugin" \ maintainer="maintainer@vendorX.com" \ vendor="VendorX" \ version="3.7" \ release="1" \ summary="Red Hat OpenStack Platform 13.0 cinder-volume VendorX PluginY" \ description="Red Hat OpenStack Platform 13.0 cinder-volume VendorX PluginY" USER root ###Adding package ###repo exmple COPY vendorX.repo /etc/yum.repos.d/vendorX.repo ###adding package with curl RUN curl -L -o /verdorX-plugin.rpm http://vendorX.com/vendorX-plugin.rpm ###adding local package COPY verdorX-plugin.rpm / # Enable a repo to install a package RUN yum clean all RUN yum-config-manager --enable rhel-7-server-openstack-13-rpms RUN yum install -y vendorX-plugin RUN yum-config-manager --disable rhel-7-server-openstack-13-rpms # Add required license as text file in Liceses directory (GPL, MIT, APACHE, Partner End User Agreement, etc) RUN mkdir /licenses COPY licensing.txt /licenses USER cinder