関数の実行¶
関数の実行は、ローカル環境で関数を実行する前に、関数の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: