Cloud Code for IntelliJ で既存のアプリケーションを使用する

既存のプロジェクトにすでに Kubernetes マニフェスト、Dockerfile、またはイメージをビルドする Jib が構成されている場合は、それを開いてプラグインで使用できます。追加で構成が必要となるのは Skaffold YAML ファイルのみですが、これは自動で生成されるか、提供されたテンプレートから作成できます。

Skaffold YAML の構成が完了したら、プロジェクト イメージを push しようとしているコンテナ イメージの保存場所を指定してください。

自動プロジェクト ブートストラップ

プロジェクトには 1 つ以上の Kubernetes マニフェストが必要です。Cloud Code がプロジェクト内の Kubernetes マニフェストを検出すると、Cloud Code はブートストラップを試みます。

Cloud Code が既存の Skaffold 構成を検出しない場合、構成の支援を求めるメッセージが表示されます。

前提条件

skaffold.yaml ファイルを作成して必要な構成を実行するようにプロンプトを表示するには、プロジェクトが次の前提条件を満たしている必要があります。

  • (オプション 1)プロジェクトに Dockerfile があり、Jib 用に構成されている。

  • (オプション 2)Buildpacks を使用してプロジェクトをビルド可能であり、Kubernetes リソースがある。

Kubernetes の実行構成を設定する

前提条件が満たされると、Cloud Code は、skaffold.yaml ファイル(まだ存在しない場合)と必要な実行構成を作成するように求めるプロンプトを表示します。

Cloud Code Kubernetes の実行構成を作成するためのリンクを含む通知

  1. この通知をクリックすると、自動的に構成が作成されます(可能な場合)。

    複数のイメージまたはビルダーが検出されたために Skaffold の構成を自動的に作成できない場合、Cloud Code から、検出されたイメージとビルダー間のマッピングの提供を求めるダイアログが表示されます。

    Skaffold 構成で使用するビルド設定を指定する

    または、[ツール > [Cloud Code] > [Kubernetes] と移動し、[Kubernetes サポートを追加する] をクリックすれば、Skaffold 構成を設定することもできます。

    このオプションは、プロジェクトの Kubernetes リソースを分析し、skaffold.yaml ファイル(存在していない場合)と必要な実行構成を生成します。生成された 2 つの実行構成には、Kubernetes でプロジェクトを実行するための構成と、Kubernetes クラスタ上での開発用の構成が含まれています。

  2. サポートが追加されたら、新しく追加された実行構成を使用して、Kubernetes でプロジェクトの実行およびデバッグを開始できます。

Cloud Code Skaffold 構成を手動で作成する

新しい skaffold.yaml ファイルを手動で作成することも、既存のファイルをプロジェクトに追加することもできます。

ライブ テンプレートを使用して skaffold.yaml ファイルを手動で作成するには、次の手順に従います。

  1. プロジェクトのルート ディレクトリに、skaffold.yaml という名前の新規ファイルを作成します(右クリック > [New] > [File])。

  2. 新しいファイル内のカーソルで、Ctrl+Space を押してライブ テンプレートの候補を表示し、使用する Skaffold テンプレートを選択します。

    Skaffold YAML テンプレートの使用

  3. イメージ フィールドにプロジェクトのイメージ名を入力します。マニフェスト フィールドには、IDE からデプロイしようとする Kubernetes リソースのリストを入力します。

  4. Cloud Code によって skaffold.yaml ファイルが有効であると判断されたら、プロンプトをクリックして Kubernetes 実行構成を作成します。

    Kubernetes 実行ターゲット通知の作成

Cloud Code Skaffold 構成の例

  • Dockerfile ベースのビルド:

    build:
      artifacts:
        - image: image_name
    deploy:
      kubectl:
        manifests:
          - k8s/web.yaml
          - k8s/backend.yaml
    
  • Jib プラグインを使用した、Java Maven / Gradle プロジェクトのビルド セクション(deploy セクションも同様):

    build:
    artifacts:
    - image: image_name
      jib: {}
    
  • さまざまなコンテキストに対してビルド、テスト、デプロイの構成を定義する場合、さまざまなプロファイルを使用できます。以下に、Cloud Build でイメージをビルドするように Cloud Code を構成する Cloud Build プロファイルの例を示します。

    profiles:
    # use the cloudbuild profile to build images using Google Cloud Build
    - name: cloudbuild
      build:
        googleCloudBuild: {}
    
  • Helm を使用してプロジェクトをデプロイする場合は、Helm のドキュメントをご覧ください。

コンテナ イメージの保存場所の指定

コンテナ イメージ ストレージ

アプリケーションをデプロイする前に、プロジェクトで使用するデフォルトのイメージ リポジトリを定義する必要があります。

デフォルトでは、プロジェクトは Kubernetes マニフェストで指定されたイメージ名を使用するように構成されています。このイメージ指定をカスタマイズすることもできます。任意のリポジトリ(Artifact RegistryContainer RegistryDockerHub、非公開リポジトリなど)の設定が完了したら、実行構成を編集して、そのリポジトリを実行構成の設定でデフォルトのイメージ リポジトリとして指定します。Google Container Registry イメージでは、このフィールドには Container Registry リポジトリをすばやく見つけるためのオートコンプリート機能があります。

これには、[Run/Debug configurations] ダイアログ上部のタスクバーから [Edit Configurations] > [Develop on Kubernetes] > [Image repository] の順に選択します。

実行構成のデフォルトのイメージ リポジトリが「gcr.io/」形式で設定され、現在のプロジェクトとアクティブなクラスタに基づいてオートコンプリート オプションが表示される。

コンテナ イメージの設定を指定する方法については、コンテナ イメージの設定の構成ガイドをご覧ください。

ビルド設定

コンテナ イメージを設定したら、ビルド設定を構成できます。Cloud Code は、Docker、Jib、Buildpacks のアーティファクト タイプをサポートしています。

[Run configuration] 設定の [Build/Deploy] タブ([Edit Configurations] > [Develop on Kubernetes])、デフォルトのプロファイルのビルド設定を構成できます。

[Build/Deploy] タブに表示されるビルド設定

イメージのビルド設定の指定について詳しくは、コンテナ イメージのビルド設定の構成ガイドをご覧ください。

次のステップ

サポートを受ける

IntelliJ IDE でフィードバックを送信するか、問題を報告するには、[Tools] > [Cloud Code] > [Help / About] > [Submit feedback or report an issue] を選択します。ここから、GitHub で問題を報告したり、Stack Overflow で質問したりできます。