Node.js と Docker Compose
Docker Compose(英語) は、マルチコンテナーアプリケーションを実行するために使用されます。 例: Web サーバー、バックエンドデータベース、アプリケーションコードを個別のサービスとして実行できます。 必要に応じてコンテナーを追加することで各サービスを拡張できます。 これにより、本番環境と同様に、動的な環境で効率的な開発とテストを実行できます。
始める前に
設定 | プラグイン ページの インストール済み タブで、 JavaScript and TypeScriptおよび Dockerに必要なプラグインが有効になっていることを確認します。 詳細は、 プラグインの管理を参照してください。
JetBrains Marketplaceからプラグインをインストールするの説明に従って、 設定 | プラグイン ページ、タブ Marketplace で Node.js、 Node.js Remote Interpreter、 JavaScript Debuggerプラグインをインストールします。 プラグインは IntelliJ IDEA Ultimate でのみ利用できます。
Docker の説明に従って Dockerをダウンロード、インストール、および構成します。
Docker Compose を使用して Node.js ランタイムを構成する
Docker の Node.js ランタイムは、 Node.js リモートランタイムの構成 ダイアログで構成されます。 このダイアログは、 設定 ダイアログの JavaScript ランタイム ページから開くことができます。また、アプリケーションを実行またはデバッグするために Node.js の実行/デバッグ構成を作成または編集するときに開くこともできます。
推奨される方法は、 設定 ダイアログでリモート Node.js ランタイムを構成することです。 この場合、プロジェクトのデフォルトとしてランタイムと関連するパッケージマネージャーを設定できます。 その結果、Docker で構成された Node.js ランタイムを使用してアプリを実行およびデバッグできるだけでなく、プロジェクトの依存関係を管理し、テストを実行し、コードをリントすることもできます。 以下の npm、pnpm、yarn と Docker、 アプリケーションをテストする、 Docker を使用した ESLint を参照してください。
Node.js の実行 / デバッグ構成で直接構成するリモート Node.js ランタイムは、この実行 / デバッグ構成でのみ使用できます。
設定 ダイアログ(Ctrl+Alt+S )を開き、 に進みます。
Node runtime フィールドの横にある
をクリックします。

現在構成されているすべてのランタイムのリストが表示された Node.js ランタイムダイアログで、ツールバーの
をクリックし、コンテキストメニューから リモートの追加 を選択します。

開いた Node.js リモート ランタイムの構成ダイアログで、 Docker Compose を選択します。
サーバー リストから、使用する Docker 構成を選択します。

または、フィールドの横にある 新規 をクリックし、 Docker サポートを有効にする説明に従って Docker サーバーを構成します。
構成ファイル フィールドで、使用する docker-compose 構成ファイルを指定します。 「参照 」をクリックし、表示される「Docker Compose 構成ファイル 」ダイアログで構成ファイルのリストを作成します。

サービス リストから、使用するサービスを選択します。

OK をクリックして、新しいランタイムがリストに追加される Node.js ランタイム ダイアログに戻ります。 新しく構成されたランタイムをプロジェクトのデフォルトとして設定するには、リストでランタイムを選択し、 OK をクリックして JavaScript ランタイム ダイアログに戻ります。

IntelliJ IDEA は、たとえば実行 / デバッグ構成を作成するときに、 Node runtime リストから プロジェクト エイリアスを選択するたびに、このインタープリターを自動的に使用します。
新しいランタイムに関連付けられたパッケージマネージャーを使用してプロジェクトの依存関係を管理するには、このパッケージマネージャーをプロジェクトのデフォルトとして設定します。 これを行うには、 パッケージマネージャー(M) フィールドでパッケージマネージャーの場所を指定します。 プロジェクトでデフォルトの Node.js ランタイムとパッケージマネージャーを指定するから詳細を参照してください。
プロジェクトでデフォルトの Node.js ランタイムとパッケージマネージャーを指定する
IntelliJ IDEA は、実行 / デバッグ構成の作成時など、 Node runtime リストから プロジェクト エイリアスを選択するたびに、デフォルトのプロジェクトインタープリターを自動的に使用します。
デフォルトのプロジェクトパッケージマネージャーは、依存関係を管理するために自動的に使用されます。たとえば、 package.json ファイルから <package manager> install を実行したり、ESLint、Prettier などのサードパーティ製ツールをインストールしたりします。
設定 ダイアログ(Ctrl+Alt+S )を開き、 に進みます。
Node runtime リストから、現在のプロジェクトでデフォルトで使用する構成を選択します。
パッケージマネージャー リストから、使用するパッケージマネージャーに関連付けられているエイリアスを選択します。 IntelliJ IDEA はその位置を自動的に検出します。

または、必要なパッケージマネージャーの場所を手動で指定します。
npm 実行可能ファイルのデフォルトの場所は
/usr/local/lib/node_modules/npmです。pnpm のデフォルトの場所は、インストール方法によって異なります。
npm を介してインストールするための /usr/local/lib/node_modules/pnpm 。
カールを介してインストールするための /usr/local/pnpm-global/<version>/node_modules/pnpm (
curl -f https://get.pnpm.io/<version>.js | node - add --global pnpm)。
詳細については、 pnpm 公式 Web サイト(英語)を参照してください。
ヤーンのデフォルトの場所は /opt/yarn-<version>5 で、たとえば /opt/yarn-v1.22.5 です。
Node.js 実行 / デバッグ構成を作成する
に移動します。 開いた 構成の編集 ダイアログで、ツールバーの
をクリックし、コンテキストメニューから Node.js を選択します。 「実行 / デバッグ構成: Node.js 」ダイアログが開きます。
ファイル フィールドで、それを開始するアプリケーションのメインファイルへのパスを指定します(たとえば、 Express(英語) アプリケーションの場合は bin/www )。

必要に応じて、 Node.js アプリケーションの実行とデバッグで説明されているいくつかのオプション設定を指定します。
Node runtime リストから、Docker Compose を介して関連するリモート Node.js ランタイムを選択します。

または、 Node runtime フィールドの横にある
をクリックし、リモート Node.js ランタイムを 上記のように構成します。

Docker Compose エリアで、Docker Compose に渡すコマンドとオプションを指定します。 デフォルト設定を受け入れるか、「
」をクリックしてカスタム設定 (たとえば、
--rmや--service-portsなどのカスタム Docker Compose フラグ) を指定します。 詳細については、 Docker オフィシャル Web サイト(英語)を参照してください。コマンドプレビュー を確認してください。
