Dockerfile 実行構成
このタイプの構成を使用して、Dockerfile からイメージを構築し、このイメージからコンテナーを派生させます。

Docker は、 docker build(英語) コマンドを使用して Dockerfile からイメージを構築し、次に docker run(英語) コマンドを使用してそこからコンテナーを起動します。
デフォルトでは、 Dockerfile 構成には以下のオプションがあります。
項目 | 説明 |
|---|---|
名前(N) | 実行構成の名前を指定して、編集または実行時に他の構成の間ですばやく識別できるようにします。 |
複数のインスタンスを許可する(U) | この実行構成の複数のインスタンスを並行して実行できるようにします。 デフォルトでは無効になっており、別のインスタンスがまだ実行されているときにこの構成を開始すると、IntelliJ IDEA は実行中のインスタンスを停止して別のインスタンスを開始することを提案します。 これは、実行構成が多くのリソースを消費し、複数のインスタンスを実行する正当な理由がない場合に役立ちます。 |
プロジェクトファイルとして保存(S) | 実行構成設定を含むファイルを保存して、他のチームメンバーと共有します。 デフォルトの場所は .idea/runConfigurations です。 ただし、 .idea ディレクトリを共有したくない場合は、プロジェクト内の他のディレクトリに構成を保存できます。 デフォルトでは無効になっており、IntelliJ IDEA は実行構成設定を .idea/workspace.xml に保存します。 |
サーバー | 実行構成に使用する Docker デーモン接続を選択します。 |
Dockerfile | イメージの構築に使用される Dockerfile の名前と場所を指定します。 |
イメージタグ | ビルドされたイメージのオプションの名前とタグを指定します。 これは、将来的にイメージを参照できます。 フィールドを空白のままにすると、イメージにはランダムな一意の識別子のみが含まれます。 |
コンテナー名 | コンテナーのオプションの名前を指定します。 空の場合、Docker はコンテナーのランダムな名前を生成します。 これは、 |
起動前(B) | 実行構成を開始する前に実行するタスクのリストを指定します。 例: 別の構成を実行し、必要なアーティファクトを構築し、外部ツールまたは Web ブラウザーを実行します。
|
このページを表示する | 実際に起動する前に、実行構成設定を表示します。 |
ツールウィンドウをアクティブにする | 構成のタイプに応じて、この実行構成を開始するときに 実行、 デバッグ、 サービスツールウィンドウを開きます。 このオプションが無効になっている場合は、ツールウィンドウを手動で開くことができます。
|
オプションを変更(M) メニューを使用して、実行構成に詳細オプションを追加します。
項目 | 説明 |
|---|---|
コンテキストフォルダー | デーモンがビルドプロセス中に使用するローカルディレクトリを指定します。 Dockerfile 内のすべてのホストパスは、このディレクトリを基準にして処理されます。 デフォルトでは、空白のままにすると、Docker は Dockerfile が配置されているのと同じディレクトリを使用します。 |
ビルド引数 | ビルドプロセス中に通常の環境変数のようにアクセスできるビルド時の変数の値を指定しますが、中間イメージまたは最終イメージには保持されません。 これは、 これらの変数は、
ARG PGTAG=latest
FROM postgres:$PGTAG
この場合の
--build-arg PGTAG=9
複数の引数をスペースで区切って指定できます。 |
ビルドオプション | サポートされている 例: |
ビルトイメージの実行 | 選択すると、IntelliJ IDEA はビルド後に Dockerイメージを実行します。 |
公開されているすべてのポートをランダムに公開 | 公開されているすべてのコンテナーポートを、ホスト上のランダムな空きポートに公開します。 これは、コマンドラインで |
バインドポート | 特定のコンテナーポートをホスト上の特定のポートにマップします。 これは、コマンドラインで バインドポート フィールドの ホストのポート 5432 で PostgreSQL がすでに実行されている場合、別の PostgreSQL インスタンスをコンテナーで実行し、ホストからポート 5433 でアクセスしたいとします。 ホストポート 5433 をコンテナー内のポート 5432 にバインドすることは、次のコマンドラインオプションを設定することに似ています。 -p 5433:5432
このオプションは、 バインドポート フィールドを構成する代わりに、 実行オプション フィールドで明示的に設定できます。 |
エントリーポイント | イメージのデフォルトの これは、コマンドラインで |
コマンド | イメージのデフォルトの これは、 |
バインドマウント | ホスト上のファイルとディレクトリをコンテナー内の特定の場所にマウントします。 これは、コマンドラインで バインドマウント フィールドで 例: ホスト上のローカル PostgreSQL ディレクトリ( /Users/Shared/pg-data )をコンテナー内のディレクトリ( /var/lib/pgsql/data )にマウントできます。 この方法でボリュームをマウントすることは、次のコマンドラインオプションを設定することに似ています。 -v /Users/Shared/pg-data:/var/lib/pgsql/data
このオプションは、 バインドマウント フィールドを構成する代わりに、 実行オプション フィールドで明示的に設定できます。 |
環境変数 | 環境変数を指定します。 Dockerfile 内の これは、コマンドラインで 変数の名前と値を追加するには、 環境変数 フィールドの 例: (アプリケーションを実行しているユーザーのオペレーティングシステム名ではなく)デフォルトで特定のユーザー名で PostgreSQL に接続する場合は、 --env PGUSER=%env-var-value
このオプションは、 環境変数 フィールドを構成する代わりに、 実行オプション フィールドで明示的に設定できます。 |
実行オプション | サポートされているその他の docker run(英語) オプションを設定します。 例: コンテナーを --network my-net --network-alias my-app
|
コンテナーにアタッチ | コンテナーの標準入力、出力、エラーストリームに接続します。 これは、コマンドラインで |
コマンドプレビューの表示 | 実行構成の実行に使用されるコマンドをプレビューします。 |