This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.11.2.5. 在集群中构建和部署功能
您可以使用 Knative(kn
)CLI 启动功能项目构建,然后直接将功能部署到集群中。若要以这种方式构建功能项目,您的功能项目的源代码必须存在于可供集群访问的 Git 存储库分支中。
OpenShift Serverless 功能只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的详情,请参考 https://access.redhat.com/support/offerings/techpreview/。
先决条件
- 在集群中必须安装 Red Hat OpenShift Pipelines。
-
已安装 OpenShift CLI(
oc
)。 -
已安装 Knative(
kn
)CLI。
流程
在您要运行 Pipelines 和部署功能的每个命名空间中,您必须创建以下资源:
创建函数 buildpacks Tekton 任务,以便能构建功能镜像:
oc apply -f https://raw.githubusercontent.com/openshift-knative/kn-plugin-func/serverless-1.22.0/pipelines/resources/tekton/task/func-buildpacks/0.1/func-buildpacks.yaml
$ oc apply -f https://raw.githubusercontent.com/openshift-knative/kn-plugin-func/serverless-1.22.0/pipelines/resources/tekton/task/func-buildpacks/0.1/func-buildpacks.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
kn func
部署 Tekton 任务,以便在管道中部署该功能:oc apply -f https://raw.githubusercontent.com/openshift-knative/kn-plugin-func/serverless-1.22.0/pipelines/resources/tekton/task/func-deploy/0.1/func-deploy.yaml
$ oc apply -f https://raw.githubusercontent.com/openshift-knative/kn-plugin-func/serverless-1.22.0/pipelines/resources/tekton/task/func-deploy/0.1/func-deploy.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
创建功能:
kn func create <function_name> -l <runtime>
$ kn func create <function_name> -l <runtime>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
在创建了新的功能项目后,您必须将项目添加到 Git 存储库,并确保该存储库可供集群使用。关于此 Git 存储库的信息用于在下一步中更新
func.yaml
文件。 更新功能项目的
func.yaml
文件中的配置,以便为 Git 仓库启用 on-cluster 构建:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 实施您功能的业务逻辑。然后,使用 Git 提交并推送更改。
部署功能:
kn func deploy
$ kn func deploy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您没有登录到功能配置中引用的容器 registry,系统会提示您为托管功能镜像的远程容器 registry 提供凭证:
输出和提示示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
要更新功能,请使用 Git 提交并推送新的更改,然后再次运行
kn func deploy
命令。