10.3. S2I(Source-to-Image) 이미지 사용자 정의
S2I(Source-to-Image) 빌더 이미지를 사용자 지정하여 기본 assemble 및 run 스크립트 동작을 수정합니다. 기본 스크립트가 적합하지 않은 경우 특정 애플리케이션 요구 사항을 충족하도록 S2I 빌더를 조정할 수 있습니다.
10.3.1. 이미지에 포함된 스크립트 호출 링크 복사링크가 클립보드에 복사되었습니다!
사용자 정의 논리 및 기본 스크립트를 실행하는 래퍼 스크립트를 생성하여 임베디드 S2I 이미지 스크립트를 호출합니다. 지원되는 스크립트 논리 및 업그레이드 호환성을 유지하면서 빌더 이미지 동작을 확장하려면 이 작업을 수행해야 합니다.
프로세스
io.openshift.s2i.scripts-url레이블의 값을 보고 빌더 이미지 내부의 스크립트 위치를 확인합니다.podman inspect --format='{{ index .Config.Labels "io.openshift.s2i.scripts-url" }}' wildfly/wildfly-centos7$ podman inspect --format='{{ index .Config.Labels "io.openshift.s2i.scripts-url" }}' wildfly/wildfly-centos7Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
image:///usr/libexec/s2i
image:///usr/libexec/s2iCopy to Clipboard Copied! Toggle word wrap Toggle overflow wildfly/wildfly-centos7빌더 이미지를 검사하고 스크립트가/usr/libexec/s2i디렉터리에 있음을 확인합니다.다른 명령으로 래핑된 표준 스크립트 중 하나를 호출하는 스크립트를 생성합니다.
.s2i/bin/assemble스크립트Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 예에서는 메시지를 출력하고, 이미지에서 표준 assemble 스크립트를 실행하는 사용자 정의 assemble 스크립트를 보여주고 assemble 스크립트의 종료 코드에 따라 다른 메시지를 출력합니다.
중요run 스크립트를 래핑할 때
exec를 사용하여 신호가 올바르게 처리되는지 확인해야 합니다.exec를 사용하면 기본 이미지 실행 스크립트를 호출한 후 추가 명령을 실행할 수 없습니다..s2i/bin/run스크립트#!/bin/bash echo "Before running application" exec /usr/libexec/s2i/run
#!/bin/bash echo "Before running application" exec /usr/libexec/s2i/runCopy to Clipboard Copied! Toggle word wrap Toggle overflow