部署函式¶
部署函式會為您的函式建立 OCI 容器映像,並將此容器映像推送至您的映像登錄。 函式會以 Knative 服務的形式部署到叢集。 重新部署函式會更新容器映像以及叢集上執行的結果服務。 已部署到叢集的函式可以像任何其他 Knative 服務一樣在叢集上存取。
先決條件¶
-
您的本機電腦上已安裝 Docker 精靈。 如果您已使用快速入門安裝,則已提供此功能。
-
您有權存取容器登錄,並能夠將映像推送至此登錄。 請注意,某些映像登錄預設會將新推送的映像設定為私有。 如果您是第一次部署函式,您可能需要確保您的映像設定為公開。
程序¶
deploy
命令會使用函式專案名稱作為 Knative 服務名稱。 建立函式時,會使用專案名稱和映像登錄名稱來建構函式的完整映像名稱。
在專案目錄內執行命令來部署函式
func deploy --registry <registry>
在專案目錄內執行命令來部署函式
kn func deploy --registry <registry>
預期輸出
🙌 Function image built: <registry>/hello:latest
✅ Function deployed in namespace "default" and exposed at URL:
http://hello.default.127.0.0.1.sslip.io
您可以使用 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: