10.3. S2I(Source-to-Image) 이미지 사용자 정의
소스-이미지(S2I) 빌더 이미지를 사용자 정의하여 기본 어셈블 및 실행 스크립트 동작을 수정합니다. 기본 스크립트가 적합하지 않은 경우 특정 애플리케이션 요구 사항을 충족하도록 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