Docker 接続設定
RubyMine から Docker エンジン API にアクセスするための設定を指定します。 RubyMine で Docker の統合を利用する方法について詳しくは、 Docker を参照してください。
Docker プラグインの有効化
この機能は Docker プラグインに依存しており、RubyMine にはデフォルトでバンドルされ有効化されています。 関連機能が利用できない場合は、プラグインを無効化していないことを確認してください。
Ctrl+Alt+S を押して設定を開き、 を選択します。
Docker プラグインを見つけて、 有効化 をクリックします。
RubyMine が Docker デーモンとやり取りするために使用する Docker CLI 実行可能ファイルへのパスを指定できます。
RubyMine はデフォルトのインストール場所にある Docker CLI 実行可能ファイルを自動的に検出できるはずです。 ただし、Docker をカスタムの場所にインストールした場合は、パスを手動で指定する必要がある場合があります。 Docker CLI がインストールされていない場合は、 RubyMine から直接ダウンロードできます。
- 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 を使用する際に推奨されるオプションです。
- Mac 用 Docker
macOS で Docker Desktop を使用する際に推奨されるオプションです。
- Unix ソケット
Linux で Docker Desktop を使用する際に推奨されるオプションです。
- TCP ソケット
Docker エンジン API(英語) への URL を手動で構成します。
エンジン 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
Windows Subsystem for Linux (WSL) で実行されている Docker デーモンに接続します。
- minikube(ミニキューブ)
minikube(英語) を実行している場合は、このオプションを選択して、minikube の Docker エンジン環境を自動的に検出して接続します。
RubyMine が minikube を検出できない場合、またはリモートで実行されている場合は、
minikube docker-envコマンドを実行して必要な接続情報を取得し、 TCP ソケットに以下を設定してください:エンジン API URL:
DOCKER_HOSTの値 (tcpの代わりにプロトコルとしてhttpsを使用)証明書フォルダー:
DOCKER_CERT_PATHの値
IDE から Docker CLI をダウンロード
RubyMine でイメージをビルドして Docker Compose を実行するには、リモート Docker エンジンに接続する場合も含め、ローカル Docker CLI が必要です。
RubyMine がマシン上の Docker CLI を見つけられない場合、IDE にはダウンロードするオプションを含む Docker CLI がインストールされていません 通知が表示されます。 同じ警告が Docker 設定ページの上部に表示されます。
RubyMine は Docker が提供する次のツールをダウンロードします:
Docker CLI 29.6.2 版
Docker Buildx 0.35.0 版
Docker Compose 5.3.1 版
ダウンロードしたツールには Docker エンジンは含まれていません。 コンテナーを実行するには、リモート Docker エンジンに接続するか、マシンにインストールしてください。
ダウンロードしたツールは docker-cli ディレクトリに保存されます:
macOS | ~/Library/Application Support/JetBrains/docker-cli |
|---|---|
Windows | %APPDATA%\JetBrains\docker-cli |
Linux | ~/.local/share/JetBrains/docker-cli |
Windows および macOS ホストの仮想マシンパスマッピング
Docker エンジンは Linux 上でネイティブに実行されます。 Windows および macOS では、Docker は軽量の Linux 仮想マシン内で実行されるため、コンテナーはその VM 内に存在するファイルにのみアクセスできます。
Docker 接続構成オプションの表では、ローカルファイルシステムと Docker エンジンを実行している仮想マシン間のマッピングを構成して、コンテナー内のボリュームマウントに使用できるようにすることができます。
追加 Alt+Insert
新しいマッピングを追加します。
削除 Ctrl+Y
選択したマッピングを削除します。
編集 Enter
選択したマッピングを編集します。
- 仮想マシンのパス
この Docker エンジンの実行に使用する仮想マシン内のディレクトリへのパスです。
- ローカルパス
仮想マシン内の対応するディレクトリとマッピングしたいローカルフォルダーへのパスです。 このフォルダーの外側にあるものは、この Docker エンジンが実行するコンテナにバインドマウントできません。
RubyMine は、これらのマッピングを Windows および macOS ホストにのみ適用します。 デフォルトでは、このテーブルは Windows では C:\Users を /c/Users に、macOS では /Users を /Users にマッピングします。 サービス ツールウィンドウでコンテナーのバインドマウントを構成すると、ホストパスのファイル選択にはこのテーブルのローカルフォルダーのみが表示され、RubyMine はローカルパスを対応する仮想マシンパスに置き換えます。 テーブルが空の場合、RubyMine はまず Docker 設定でパスマッピングを構成するよう求めます。
パスマッピングを追加する
既存のマッピングの対象外であるローカルフォルダーからファイルをバインドマウントする必要がある場合は、マッピングを追加します。
Docker 接続オプションの下にあるテーブルで、
(Alt+Insert) をクリックします。
仮想マシンのパス フィールドで、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 でデータを管理する(英語) 」を参照してください。