跳至内容

运行函数

运行函数会在您的本地环境中运行函数之前为您的函数创建一个 OCI 容器镜像,但不会将函数部署到集群。如果您想在本地环境中运行函数以进行测试,这将非常有用。

先决条件

  • 您的本地机器上有一个 Docker 守护程序。如果您使用过快速入门安装,则已提供此守护程序。

过程

run 命令会根据需要为您的函数构建镜像,并在本地运行此镜像,而不是将其部署到集群上。

通过在项目目录中运行命令在本地运行函数。如果您尚未构建函数,则需要提供 --registry 标志

cd hello
func run [--registry <registry>]

注意

镜像仓库的坐标可以通过环境变量 (FUNC_REGISTRY) 进行配置。

使用此命令也会根据需要构建函数。

您可以通过运行以下命令强制重新构建镜像:

func run --build

也可以通过运行以下命令禁用构建:

func run --build=false

通过在项目目录中运行命令在本地运行函数

cd hello
kn func run

使用此命令也会根据需要构建函数。

您可以通过运行以下命令强制重新构建镜像:

kn func run --build

也可以通过运行以下命令禁用构建:

kn func run --build=false

您可以使用 invoke 命令并观察输出结果来验证您的函数是否已成功运行

func invoke
kn func invoke

预期输出

Received response
POST / HTTP/1.1 hello.default.127.0.0.1.sslip.io
  User-Agent: Go-http-client/1.1
  Content-Length: 25
  Accept-Encoding: gzip
  Content-Type: application/json
  K-Proxy-Request: activator
  X-Request-Id: 9e351834-0542-4f32-9928-3a5d6aece30c
  Forwarded: for=10.244.0.15;proto=http
  X-Forwarded-For: 10.244.0.15, 10.244.0.9
  X-Forwarded-Proto: http
Body:

我们使用分析和 Cookie 来了解网站流量。有关您使用我们网站的信息将与 Google 共享,以用于该目的。 了解更多。