コンテンツへスキップ

関数のビルド

関数のビルドでは、コンテナレジストリにプッシュできる関数のOCIコンテナイメージが作成されます。これは、関数のコンテナイメージをローカルでビルドする必要があるが、テストシナリオなど、関数を自動的に実行したり、クラスタにデプロイしたりする必要がない場合に便利です。

ローカルビルド

buildコマンドを使用して、クラスタにデプロイせずに、ローカルで関数のコンテナイメージをビルドできます。

前提条件

  • ローカルマシンにDockerデーモンがあります。クイックスタートインストールを使用した場合、これは既に提供されています。

手順

buildコマンドは、プロジェクト名とイメージレジストリ名を使用して、関数の完全修飾コンテナイメージ名を構築します。関数のプロジェクトが以前にビルドされていない場合、**イメージレジストリ**の提供を求めるプロンプトが表示されます。

関数をビルドするには、次のコマンドを実行します。

func build

関数をビルドするには、次のコマンドを実行します。

kn func build

注記

**イメージレジストリ**の座標は、環境変数(FUNC_REGISTRY)でも設定できます。

クラスタ上でのビルド

ローカルのDockerデーモンが実行されていない場合、またはCI/CDパイプラインを使用している場合は、ローカルビルドを使用する代わりに、クラスタ上で関数をビルドできます。func deploy --remoteコマンドを使用して、クラスタ上でのビルドを作成できます。

注記

直接アップロードデプロイメントを実行する場合(つまり、ソースコードがGitリポジトリではなくローカルマシン上にある場合)、Git URLを指定する必要はありませんが、既にGit URLを指定している場合は、func deploy --remote --git-url=""コマンドを使用して、フラグを空で指定する必要があります。

前提条件

  • 関数はGitリポジトリに存在する必要があります。
  • Tekton Pipelinesを使用するようにクラスタを設定する必要があります。クラスタ上でのビルドドキュメントを参照してください。

手順

コマンドを初めて実行する場合は、関数のGit URLを指定する必要があります。

func deploy --remote --registry <registry> --git-url <git-url> -p hello
kn func deploy --remote --registry <registry> --git-url <git-url> -p hello

一度関数のGit URLを指定したら、後続のコマンドでは省略できます。

サイトトラフィックを理解するために、分析とCookieを使用しています。サイトの使用に関する情報は、その目的のためにGoogleと共有されます。詳細はこちら。