运行函数¶
运行函数会在您的本地环境中为您的函数创建 OCI 容器镜像,然后运行该函数,但不会将函数部署到集群。如果您想在本地运行函数进行测试,这会很有用。
先决条件¶
- 您的本地机器上有一个 Docker 守护程序。如果您使用了快速入门安装,则已提供此功能。
步骤¶
如果需要,`run` 命令会为您的函数构建一个镜像,并在本地运行此镜像,而不是将其部署到集群上。
通过在项目目录中运行命令来本地运行函数。如果您尚未构建函数,则需要提供 `--registry` 标志
cd hello
func run [--registry <registry>]
注意
**镜像注册表**的坐标也可以通过环境变量 (`FUNC_REGISTRY`) 进行配置。
如果需要,使用此命令也会构建函数。
您可以通过运行以下命令强制重建镜像
func run --build
也可以通过运行以下命令禁用构建
func run --build=false
通过在项目目录中运行命令来本地运行函数。如果您尚未构建函数,则需要提供 `--registry` 标志
cd hello
kn func run [--registry <registry>]
如果需要,使用此命令也会构建函数。
您可以通过运行以下命令强制重建镜像
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: