複数のサービスをデバッグする (VS Code)

Bridge to Kubernetes を使用すると、Bridge to Kubernetes の使用 (VS Code) に関する記事で説明されているように、ローカル環境で Kubernetes サービスをデバッグできます。 Bridge to Kubernetes では、ローカルで実行されているサービスのインスタンスにトラフィックをリダイレクトし、VS Code のデバッガーを使用してデバッグできます。 ただし、一部のシナリオでは、複数のサービスを使用し、それらをすべて同時にデバッグする必要があります。 以下の手順に従って、複数のサービスを並行してデバッグできます。

複数のサービスを同時にデバッグするには

  1. 各サービスによって異なるポートがローカルでリッスンされていることを確認します。 ポート番号はサービス固有なので、サービス コードを参照して、リッスンされているポートを確認します。 デバッグ対象の複数のサービスが同じポートでリッスンしている場合は、それらを同時にデバッグすることはできません。

  2. VS Code で最初のサービスに対応するフォルダーを開きます。

  3. VS Code で [ファイル]>[Add Folder to Workspace…]\(フォルダーをワークスペースに追加…\) を選択し、他のサービスに対応するフォルダーを選択します。

  4. コマンド パレットを開き (Ctrl+Shift+P キーか、Mac の場合は Cmd+Shift+P キー)、コマンド Bridge to Kubernetes: Configure を実行して、サービスごとに各構成手順を実行します。

    警告

    分離して実行するようにサービスを構成した場合は、それらの .vscode/tasks.json ファイルで同じ isolateAs 値が使用されているようにしてください。 この値は、Bridge to Kubernetes によって、分離されたサービスにトラフィックを振り分けるために使用されるプレフィックスです。 既定では、それらを構成すると、互いに異なる値が設定されます。 その値の 1 つを選択し、他のサービスの tasks.json ファイルを手動で編集して、すべて同じ値に指定できます。

    "tasks": [
       {
           "label": "bridge-to-kubernetes.service",
           "type": "bridge-to-kubernetes.service",
           "service": "service-name",
           "ports": [
               3000
           ],
           "isolateAs": "<copy-same-value-for-all-debugged-services>",
           "useKubernetesServiceEnvironmentVariables": false
       }
    ]
    
  5. 各サービスに必要なブレークポイントを設定します。

  6. 各サービスのフォルダーでデバッガーを起動して、各サービスの Bridge を使用してデバッグを開始します (F5 キー)。 前の手順では、各サービスの起動構成を作成しました。ワークスペースから VS Code デバッガーを起動するときに、VS Code デバッガーによってこれが使用されます。

次のステップ

Bridge to Kubernetes の動作の詳細については、「Bridge to Kubernetes のしくみ」を参照してください。