関数のビルド¶
関数のビルドでは、コンテナレジストリにプッシュできる関数の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を指定したら、後続のコマンドでは省略できます。