×

在构建和部署函数之前,必须先创建它。可以使用 Knative (kn) CLI 创建函数。

使用 Knative CLI 创建函数

可以将函数的路径、运行时、模板和镜像注册表指定为命令行标志,或者使用-c标志在终端启动交互式体验。

先决条件
  • 在集群上安装了 OpenShift Serverless Operator 和 Knative Serving。

  • 已安装 Knative (kn) CLI。

步骤
  • 创建函数项目

    $ kn func create -r <repository> -l <runtime> -t <template> <path>
    • 可接受的运行时值包括quarkusnodetypescriptgopythonspringbootrust

    • 可接受的模板值包括httpcloudevents

      示例命令
      $ kn func create -l typescript -t cloudevents examplefunc
      示例输出
      Created typescript function in /home/user/demo/examplefunc
    • 或者,可以指定包含自定义模板的存储库。

      示例命令
      $ kn func create -r https://github.com/boson-project/templates/ -l node -t hello-world examplefunc
      示例输出
      Created node function in /home/user/demo/examplefunc

在 Web 控制台中创建函数

可以使用 OpenShift Container Platform Web 控制台的**开发人员**视角从 Git 存储库创建函数。

先决条件
  • 在使用 Web 控制台创建函数之前,集群管理员必须完成以下步骤

    • 在集群上安装 OpenShift Serverless Operator 和 Knative Serving。

    • 在集群上安装 OpenShift Pipelines Operator。

    • 创建以下管道任务,以便它们可用于集群上的所有命名空间

      func-s2i 和 func-deploy 任务
      $ kn func tkn-tasks | oc apply -f -
      Node.js 函数
      $ oc apply -f https://raw.githubusercontent.com/openshift-knative/kn-plugin-func/serverless-1.34/pkg/pipelines/resources/tekton/pipeline/dev-console/0.1/nodejs-pipeline.yaml
  • 必须登录到 OpenShift Container Platform Web 控制台。

  • 必须创建一个项目,或者拥有访问具有在 OpenShift Container Platform 中创建应用程序和其他工作负载的适当角色和权限的项目的权限。

  • 必须创建或访问包含函数代码的 Git 存储库。该存储库必须包含func.yaml文件并使用s2i构建策略。

步骤
  1. 在**开发人员**视角中,导航到**+添加** → **创建无服务器函数**。将显示**创建无服务器函数**页面。

  2. 输入指向包含函数代码的 Git 存储库的**Git Repo URL**。

  3. 在**管道**部分

    1. 选择**构建、部署和配置管道存储库**单选按钮以创建函数的新管道。

    2. 选择**使用此集群中的管道**单选按钮以将函数连接到集群中的现有管道。

  4. 单击**创建**。

验证
  • 创建函数后,可以在**开发人员**视角的**拓扑**视图中查看它。