2.4. 함수 빌드
함수를 실행하려면 함수 프로젝트를 빌드해야 합니다. kn func run
명령을 사용하는 경우 함수가 자동으로 빌드됩니다. 그러나 kn func build
명령을 사용하여 실행하지 않고 함수를 빌드할 수 있으며 고급 사용자 또는 디버깅 시나리오에 유용할 수 있습니다.
kn func build
명령은 컴퓨터 또는 OpenShift Container Platform 클러스터에서 로컬로 실행할 수 있는 OCI 컨테이너 이미지를 생성합니다. 이 명령은 함수 프로젝트 이름과 이미지 레지스트리 이름을 사용하여 함수의 정규화된 이미지 이름을 구성합니다.
2.4.1. 이미지 컨테이너 유형
기본적으로 kn func build
는 Red Hat S2I(Source-to-Image) 기술을 사용하여 컨테이너 이미지를 생성합니다.
Red Hat S2I(Source-to-Image)를 사용하는 빌드 명령 예
$ kn func build
2.4.2. 이미지 레지스트리 유형
OpenShift Container Registry는 기본적으로 함수 이미지를 저장하기 위한 이미지 레지스트리로 사용됩니다.
OpenShift Container Registry를 사용하는 빌드 명령 예
$ kn func build
출력 예
Building function image Function image has been built, image: registry.redhat.io/example/example-function:latest
--registry
플래그를 사용하여 OpenShift Container Registry를 기본 이미지 레지스트리로 덮어쓸 수 있습니다.
quay.io를 사용하도록 OpenShift Container Registry 덮어쓰기 빌드 명령 예
$ kn func build --registry quay.io/username
출력 예
Building function image Function image has been built, image: quay.io/username/example-function:latest
2.4.3. push 플래그
--push
플래그를 kn func build
명령에 추가하여 함수 이미지를 성공적으로 빌드한 후 자동으로 푸시할 수 있습니다.
OpenShift Container Registry를 사용하는 빌드 명령 예
$ kn func build --push
2.4.4. 도움말 명령
help 명령을 사용하여 kn func build
명령 옵션에 대해 자세히 알아볼 수 있습니다.
빌드 도움말 명령
$ kn func help build