第 5 章 构建函数
要运行功能,您必须首先构建 function 项目。这在使用 kn func run
命令时自动发生,但您也可以在不运行的情况下构建功能。
5.1. 构建函数
在运行功能前,您必须构建 function 项目。如果使用 kn func run
命令,则该函数会自动构建。但是,您可以使用 kn func build
命令在不运行的情况下构建函数,这对于高级用户或调试场景非常有用。
kn func build
命令创建可在您的计算机或 OpenShift Container Platform 集群中运行的 OCI 容器镜像。此命令使用功能项目名称和镜像 registry 名称为您的功能构建完全限定镜像名称。
5.1.1. 镜像容器类型
默认情况下,kn func build
使用 Red Hat Source-to-Image (S2I) 技术创建一个容器镜像。
使用 Red Hat Source-to-Image (S2I) 的 build 命令示例.
$ kn func build
5.1.2. 镜像 registry 类型
OpenShift Container Registry 默认用作存储功能镜像的镜像 registry。
使用 OpenShift Container Registry 的 build 命令示例
$ kn func build
输出示例
Building function image Function image has been built, image: registry.redhat.io/example/example-function:latest
您可以使用 --registry
标志覆盖使用 OpenShift Container Registry 作为默认镜像 registry:
build 命令覆盖 OpenShift Container Registry 以使用 quay.io
$ kn func build --registry quay.io/username
输出示例
Building function image Function image has been built, image: quay.io/username/example-function:latest
5.1.3. push 标记
您可以将 --push
标志添加到 kn func build
命令中,以便在成功构建后自动推送功能镜像:
使用 OpenShift Container Registry 的 build 命令示例
$ kn func build --push
5.1.4. help 命令
您可以使用 help 命令了解更多有关 kn func build
命令选项的信息:
构建 help 命令
$ kn func help build