3.9. 추가적인 사용자 지정 빌드 단계


정의 파일의 additional_build_steps 섹션에서 모든 빌드 단계에 대한 사용자 정의 빌드 명령을 지정할 수 있습니다. 이를 통해 빌드 단계를 세부적으로 제어할 수 있습니다.

prepend_append_ 명령을 사용하여 기본 빌드 단계가 실행되기 전이나 후에 실행되는 Containerfile 에 지시문을 추가합니다. 명령은 런타임 시스템에 필요한 모든 규칙을 준수해야 합니다.

additional_build_steps 에서 사용할 수 있는 값 목록은 다음 표를 참조하십시오.

Expand
현재의설명

prepend_base

기본 이미지를 빌드하기 전에 명령을 삽입할 수 있습니다.

append_base

기본 이미지를 빌드한 후 명령을 삽입할 수 있습니다.

prepend_galaxy

Galaxy 이미지를 빌드하기 전에 삽입할 수 있습니다.

append_galaxy

Galaxy 이미지를 빌드한 후 삽입할 수 있습니다.

prepend_builder

Python 빌더 이미지를 빌드하기 전에 명령을 삽입할 수 있습니다.

append_builder

Python 빌더 이미지를 빌드한 후 명령을 삽입할 수 있습니다.

prepend_final

최종 이미지를 빌드하기 전에 삽입할 수 있습니다.

append_final

최종 이미지를 빌드한 후 삽입할 수 있습니다.

additional_build_steps 구문은 여러 줄 문자열과 목록을 모두 지원합니다. 다음 예제를 참조하십시오.

예 3.1. 여러 줄 문자열 항목

prepend_final: |
   RUN whoami
   RUN cat /etc/os-release

예 3.2. 목록 항목

append_final:
- RUN echo This is a post-install command!
- RUN ls -la /etc

예 3.3. 임의의 파일을 실행 환경에 복사

additional_build_files:
  # copy arbitrary files next to this EE def into the build context - we can refer to them later...
  - src: files/rootCA.crt
    dest: configs

additional_build_steps:
  prepend_base:
    # copy a custom CA cert into the base image and recompute the trust database
    # because this is in "base", all stages will inherit (including the final EE)
    - COPY _build/configs/rootCA.crt /usr/share/pki/ca-trust-source/anchors
    - RUN update-ca-trust

additional_build_files 섹션을 사용하면 빌드 컨텍스트 디렉터리에 rootCA.crt 를 추가할 수 있습니다. 이 파일이 빌드 컨텍스트 디렉터리에 복사되면 빌드 프로세스에서 사용할 수 있습니다. 파일을 사용하려면 additional_build_steps 섹션의 prepend_base 단계에 지정된 COPY 지시문을 사용하여 빌드 컨텍스트 디렉터리에서 복사합니다. RUN update-ca-trust를 실행하여 CA 인증서의 동적 구성 업데이트와 같이 복사된 파일을 기반으로 모든 작업을 수행할 수 있습니다.

3.9.1. 환경 변수를 사용하여 실행 환경 빌드

다음 예제 파일은 빌드 프로세스에 필요할 수 있는 환경 변수를 지정합니다.

이 기능을 수행하기 위해 additional_build_steps 섹션의 prepend_base 단계에서 ENV 변수 정의를 사용합니다.

—
additional_build_steps:
  prepend_base:
    - ENV FOO=bar
    - RUN echo $FOO > /tmp/file1.txt

동일한 환경 변수는 빌드 프로세스의 이후 단계에서 사용할 수 있습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동