Docker 接続設定
IntelliJ IDEA から Docker エンジン API にアクセスするための設定を指定します。 Docker と IntelliJ IDEA の統合の使用方法の詳細については、 Docker を参照してください。
Docker プラグインの有効化
この機能は Docker(英語) プラグインに依存しており、IntelliJ IDEA にはデフォルトでバンドルされ有効化されています。 関連機能が利用できない場合は、プラグインを無効化していないことを確認してください。
Ctrl+Alt+S を押して設定を開き、 を選択します。
インストール済み タブを開き、 Docker プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。

IntelliJ IDEA が Docker デーモンと対話するために使用する Docker CLI(英語) 実行可能ファイルへのパスを指定できます。
IntelliJ IDEA は、デフォルトのインストール場所にある Docker CLI 実行可能ファイルを自動的に検出できるはずです。 ただし、Docker をカスタムの場所にインストールした場合は、パスを手動で指定する必要がある場合があります。
- Docker 実行可能ファイル
ベース Docker CLI 実行可能ファイルへのパスを指定します。 デフォルトの場所:
macOS および Linux
/usr/local/bin/docker
Windows
C:\Program Files\Docker\Docker\resources\bin\docker.exe
- Docker Compose 実行可能ファイル
Docker Compose スタンドアロン実行可能ファイルへのパスを指定します。 デフォルトでは、Compose V2 は Docker CLI プラットフォームに統合され、
docker composeコマンドを介して Docker Compose に同じ実行可能ファイルを使用します。Compose V1 を使用している場合、メインの Docker 実行可能ファイルは Docker Compose では機能しません。 この場合、
docker-composeへのパスを指定する必要があります。 詳細については、「docker-compose 対 docker compose(英語) 」を参照してください。
それぞれが個別の Docker デーモンへの接続を表す、複数の Docker 構成を追加できます。
Docker
新しい Docker 構成を追加します。
削除 Alt+Delete
選択した Docker 構成を削除します。
Docker 構成ごとに、名前を指定し、オペレーティングシステムに応じて接続タイプを選択します。
- Windows 用 Docker
Windowsで Docker Desktop を使用する場合に推奨されるオプションです。
- Docker for Mac
macOSで Docker Desktop を使用する場合に推奨されるオプションです。
- Unix ソケット
Linuxで Docker Desktop を使用する場合に推奨されるオプションです。
- TCP ソケット
Docker エンジン API(英語) への URL を手動で構成します。
Engine API の URL フィールドでは、リモート Docker デーモンまたは任意の Docker ソケットパス (カスタムローカルソケットを含む) への TCP 接続を指定できます。 例: ルートレスモード(英語)では、Docker デーモンは一意の識別子を持つ
systemdユーザーサービスを介して実行されるため、ソケットパスはunix:///run/user/1000/docker.sockのようなものになります。デフォルトでは、macOS および Linux では、Docker デーモンは
unix:///var/run/docker.sockの Unix ソケットで Docker エンジン API 要求をリッスンします。Windows で Docker デスクトップ(英語)を使用している場合は、
npipe:////./pipe/docker_engineの名前付きパイプまたはtcp://localhost:2375の TCP ソケットを介して Docker エンジンに接続できます。Docker エンジン API と同等の API を備えた Podman(英語) に接続することもできます。 詳細については、 Podman を参照してください。
- SSH
既存の SSH 構成を介してリモート Docker デーモンに接続するか、新しい構成を作成します。
- WSL
Linux用のWindows Subsystem (WSL) で実行されているDockerデーモンに接続します。
- Minikube
minikube(英語) を実行している場合は、このオプションを選択して、minikube の Docker エンジン環境を自動的に検出して接続します。
IntelliJ IDEA が minikube を検出できない場合、またはリモートで実行されている場合は、
minikube docker-envコマンドを実行して必要な接続情報を取得し、 TCP ソケットに次のように設定します。Engine API の URL:
DOCKER_HOSTの値 (tcpの代わりにプロトコルとしてhttpsを使用)証明書フォルダー:
DOCKER_CERT_PATHの値
Windows および macOS ホストの仮想マシンパスマッピング
Docker エンジンは Linux でネイティブに実行されます。},{ Windows と macOS では、Docker は軽量な Linux 仮想マシン内で実行されるため、コンテナーはその VM 内に存在するファイルにのみアクセスできます。},{
Docker 接続構成オプションの表を使用して、ローカルファイルシステムと Docker エンジンを実行している仮想マシン間のマッピングを構成します。これにより、コンテナーでのボリュームマウントに利用できます。},{
追加 Alt+Insert
新しいマッピングを追加します。
除去 Ctrl+Y
選択したマッピングを削除します。
編集 Enter
選択したマッピングを編集します。
- 仮想マシンのパス
このDockerエンジンの実行に使用する仮想マシン内のディレクトリへのパスです。
- ローカルパス
対応する仮想マシン内のディレクトリにマッピングしたいローカルフォルダーへのパスです。 このフォルダー外のものは、Dockerエンジンが実行するコンテナーにバインドマウントできません。
例: Docker コンテナーにバインドマウントしたすべてのファイルを /Users/jsmith/docker-share に保持するとします。 Docker エンジン接続用に、このディレクトリを仮想マシン上の /dockerShare にマップできます。 この Docker エンジンは、 /Users/jsmith/docker-share からマップしたファイルにアクセスできるため、 /dockerShare からコンテナーにファイルを効果的にバインドマウントします。
コンテナーの実行ユーザーとして操作しても影響はありません。バインドマウントやボリュームは、ホストマシン上のパスとコンテナー内のパスとのマッピングとして引き続き設定できます。 ただし、マッピングした仮想マシンのディレクトリ外のものはマウントできません。
コンテナーを実行し、ホスト上のアプリケーションアーティファクト /Users/jsmith/docker-share/out を含むディレクトリをコンテナー内の /usr/local/tomcat/webapps にマウントするとします。 この場合、Docker エンジンは仮想マシンマッピングを通じてファイルにアクセスできる場所であるため、実際には /dockerShare/out をマウントします。

ボリュームとバインドマウントの詳細については、「Docker でデータを管理する(英語) 」を参照してください。