ワークフロー: コンテナを使ったアプリの開発

このトピックでは、 Snowflake Native App with Snowpark Container Services を作成するための一般的なワークフローについて説明します。

Snowpark Container ServicesとSnowflake Native App Frameworkについて

Snowflake Native App with Snowpark Container Services の開発を始める前に

  1. Snowpark Container Services および Snowflake Native App Framework についての知識があることが求められます。

    これらのSnowflake製品については、次のチュートリアルが用意されています。

  2. Snowflake Native App with Snowpark Container Services の仕組みを理解するには、 コンテナを使用したアプリについて をご参照ください。

  3. コンテナを使用したアプリの開発、公開、使用に関連するコストを理解するには、 コンテナを使用したアプリに関連するコスト をご参照ください。

アプリによって管理されるコンテナとサービスを作成します。

コンテナを使用してアプリを開発する最初のステップは、 Snowpark Container Services を使用して必要なコンテナとサービスをセットアップすることです。

Snowpark Container Servicesを使用するための基本的なワークフローは次のとおりです。

  1. コンテナイメージを保存するためのリポジトリを作成します。

    このリポジトリはプロバイダーアカウント内に存在し、アプリに必要なコンテナイメージを管理します。 イメージリポジトリの作成 をご参照ください

  2. コンテナイメージをイメージリポジトリにコピーします。

    イメージリポジトリを作成した後、プロバイダーはアプリケーションで使用されるコンテナイメージをアップロードする必要があります。Snowpark Container Servicesは、アップロードを実行するためにDockerコマンドの使用をサポートしています。

    詳細については、 コンテナイメージをイメージリポジトリにアップロードする をご参照ください。

  3. サービス仕様ファイルを作成します。

    サービス仕様ファイルは、Snowpark Container Services内でサービスを構成および実行するために使用される YAML ファイルです。 Snowflake Native App with Snowpark Container Services では、このファイルはアプリケーションパッケージ内に含まれています。

    詳細については、 サービス仕様ファイルを作成する をご参照ください。

  4. ブロックストレージとスナップショットを構成します。

    アプリ内のサービスでブロックストレージを使用する必要がある場合は、サービス仕様ファイルに spec.volumes を作成します。

    詳細については、 サービスでのブロックストレージボリュームの使用 をご参照ください。

  5. 必要なファイルをステージにアップロードします。

    サービス仕様ファイルをアプリケーションパッケージからアクセスできるようにするには、プロバイダーは、アプリケーションパッケージに必要なその他のファイルを格納するために使用されるステージにそのファイルをアップロードする必要があります。

    ステージにファイルをアップロードする方法については、 ローカルファイルシステムからのデータファイルのステージング および Snowsightを使用したファイルのステージング をご参照ください。

    注釈

    Snowflake CLI を使用している場合、ステージにファイルをアップロードする必要はありません。

Snowflake Native App with Snowpark Container Services を開発して公開する

コンテナを使用してアプリを開発および公開するためのワークフローは、 Snowflake Native App のワークフローと同様です。ただし、ワークフローの各ステージには違いがあります。

以下は、コンテナを使用してアプリを開発および公開するための一般的なワークフローです。

  1. アプリのマニフェストファイルを作成します。

    コンテナを使用したアプリのマニフェストファイルには、アプリに含まれるコンテナに関する構成情報が含まれています。詳細については、 コンテナでアプリのマニフェストファイルを作成する をご参照ください。

  2. アプリのセットアップスクリプトを作成します。

    セットアップスクリプトの具体的な内容は、アプリの要件に応じて異なります。アプリのセットアップスクリプトの作成に関する一般的な情報については、 セットアップスクリプトを作成する をご参照ください。

    セットアップスクリプト内では、 Snowflake Native App with Snowpark Container Services に固有の以下のオブジェクトを作成できます。

    次のような、 Snowflake Native App の一部である他のオブジェクトを追加することもできます。

    • ウェアハウス

    • 外部アクセス統合

    • シークレット

  3. アプリケーションパッケージを作成します。

    コンテナを使用するアプリのアプリケーションパッケージを作成するプロセスは、他のアプリと同じです。詳細については、 アプリケーションパッケージを作成する をご参照ください。

  4. アプリを公開する

    アプリをプライベートリストとして公開したり、Snowflake Marketplaceに公開したりする方法も、他のアプリと同様です。詳細については、 コンシューマーとアプリを共有する をご参照ください。