PyCharm 2026.2 Help

Dockerfile 実行構成

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

Dockerfile 実行構成ダイアログ

Docker は、 docker build(英語) コマンドを使用して Dockerfile からイメージを構築し、次に docker run(英語) コマンドを使用してそこからコンテナーを起動します。

デフォルトでは、 Dockerfile 構成には以下のオプションがあります。

項目

説明

名前

実行構成の名前を指定して、編集または実行時に他の構成の間ですばやく識別できるようにします。

複数のインスタンスを許可する

この実行構成の複数のインスタンスを並行して実行できるようにします。

デフォルトでは無効になっており、別のインスタンスがまだ実行されているときにこの構成を開始すると、PyCharm は実行中のインスタンスを停止して別のインスタンスを開始することを提案します。 これは、実行構成が多くのリソースを消費し、複数のインスタンスを実行する正当な理由がない場合に役立ちます。

プロジェクトファイルとして保存

実行構成設定を含むファイルを保存して、他のチームメンバーと共有します。 デフォルトの場所は .idea/runConfigurations です。 ただし、 .idea ディレクトリを共有したくない場合は、プロジェクト内の他のディレクトリに構成を保存できます。

デフォルトでは無効になっており、PyCharm は実行構成設定を .idea/workspace.xml に保存します。

サーバー

実行構成に使用する Docker デーモン接続を選択します。

Dockerfile

イメージの構築に使用される Dockerfile の名前と場所を指定します。

イメージタグ

ビルドされたイメージのオプションの名前とタグを指定します。

これは、将来的にイメージを参照できます。 フィールドを空白のままにすると、イメージにはランダムな一意の識別子のみが含まれます。

コンテナー名

コンテナーのオプションの名前を指定します。 空の場合、Docker はコンテナーのランダムな名前を生成します。

これは、 docker run コマンドで --name オプションを使用するのと似ています。

起動前

実行構成を開始する前に実行するタスクのリストを指定します。 例: 別の構成を実行し、必要なアーティファクトを構築し、外部ツールまたは Web ブラウザーを実行します。

追加ボタン をクリックするか、 Alt+Insert を押して、使用可能なタスクの 1 つを追加します。

上ボタン および 下ボタン を使用してリスト内のタスクを移動し、タスクを実行する順序を変更します。 タスクを選択し、 編集ボタン をクリックしてタスクを編集します。 削除ボタン をクリックして、選択したタスクをリストから削除します。

このページを表示する

実際に起動する前に、実行構成設定を表示します。

ツールウィンドウをアクティブにする

構成のタイプに応じて、実行構成の開始時に RunDebug 、または Servicesツールウィンドウを開きます。 このオプションが無効になっている場合は、ツールウィンドウを手動で開くことができます。

  • 表示 | ツールウィンドウ | 実行 または Alt+4

  • 表示 | ツールウィンドウ | デバッグ または Alt+5

  • 表示 | ツールウィンドウ | サービス または Alt+8

ツールウィンドウにフォーカス

テストの実行中は、実行構成ツールウィンドウにフォーカスを当てます。

オプションを変更 メニューを使用して、実行構成に詳細オプションを追加します。

項目

説明

コンテキストフォルダー

デーモンがビルドプロセス中に使用するローカルディレクトリを指定します。 Dockerfile 内のすべてのホストパスは、このディレクトリを基準にして処理されます。 デフォルトでは、空白のままにすると、Docker は Dockerfile が配置されているのと同じディレクトリを使用します。

ビルド引数

ビルドプロセス中に通常の環境変数のようにアクセスできるビルド時変数の値を指定しますが、中間イメージや最終イメージには保持されません。

これは、 docker build コマンドで --build-args オプションを使用するのと似ています。

これらの変数は、 ARG 命令を使用して Dockerfile で定義する必要があります。 例: 使用するベースイメージのバージョンの変数を定義できます。

ARG PY_VERSION=latest FROM python:$PY_VERSION

この場合、 PY_VERSION 変数はデフォルトで latest に設定され、ビルド時の引数として再定義しない限り、Dockerfile は Python の最新バージョンのイメージを生成します。 PY_VERSION=3.10 を設定すると、Docker は代わりに python:3.10 をプルし、Python バージョン 3.10 のコンテナーを実行します。

PY_VERSION 引数の再定義は、次のコマンドラインオプションの設定に似ています。

--build-arg PY_VERSION=3.10

複数の引数をスペースで区切って指定できます。

ビルドオプション

サポートされている docker build オプション(英語)を設定します。

例: --label オプションを使用して、ビルドされたイメージのメタデータを指定できます。

ビルド済みイメージを実行

選択すると、PyCharm はビルド後に Docker イメージを実行します。

公開されているすべてのポートをランダムに公開する

公開されているすべてのコンテナーポートをホスト上のランダムな空きポートに公開します。

これは、コマンドラインで -P または --publish-all オプションを使用するのと似ています。

ポートをバインドする

特定のコンテナーポートをホスト上の特定のポートにマップします。

これは、コマンドラインで -p または --publish オプションを使用するのと似ています。

ポートをバインドする フィールドの 閲覧 をクリックし、ホストのどのポートをコンテナーのどのポートにマップするかを指定します。 ポートにアクセスできる特定のホスト IP を指定することもできます(たとえば、ローカルでのみアクセスできるように 127.0.0.1 に設定したり、ネットワーク内のすべてのコンピューターでポートを開くように 0.0.0.0 に設定したりできます)。

ホストポート 5432 で Django がすでに動作していて、別の Django インスタンスをコンテナーで実行し、ホストのポート 5433 からアクセスしたいとします。 ホストポート 5433 をコンテナのポート 5432 にバインドすることは、次のコマンドラインオプションを設定するのと似ています:

-p 5433:5432

このオプションは、 ポートをバインドする フィールドを構成する代わりに、 実行オプション フィールドで明示的に設定できます。

エントリポイント

イメージのデフォルトの ENTRYPOINT を上書きします。

これは、コマンドラインで --entrypoint オプションを使用するのと似ています。

コマンド

イメージのデフォルトの CMD を上書きします。

これは、 docker run の引数としてコマンドを追加するのと似ています。

バインドマウント

ホスト上のファイルとディレクトリをコンテナー内の特定の場所にマウントします。

これは、コマンドラインで -v または --volume オプションを使用するのと似ています。

バインドマウント フィールドで 閲覧 をクリックし、ホストディレクトリとそれをマウントするコンテナー内の対応するパスを指定します。 コンテナーボリュームへの書き込みを無効にする場合は、 読み取り専用 を選択します。

例: ホスト上のローカル Django ディレクトリ( Users/Shared/django-data )をコンテナー内のディレクトリ( /var/lib/django-data )にマウントできます。 この方法でボリュームをマウントすることは、次のコマンドラインオプションを設定することに似ています。

-v Users/Shared/django-data:/var/lib/django-data

このオプションは、 バインドマウント フィールドを構成する代わりに、 実行オプション フィールドで明示的に設定できます。

環境変数

環境変数を指定します。 ENV 命令で定義されているように、使用しているベースイメージには Dockerfile に関連付けられた環境変数があります。 Docker が新しいコンテナーごとに 自動的に設定する環境変数(英語)もあります。 このフィールドを使用して、変数のいずれかをオーバーライドするか、追加の変数を指定します。

これは、コマンドラインで -e または --env オプションを使用するのと似ています。

変数の名前と値を追加するには、 環境変数 フィールドの 閲覧 をクリックします。

例: デフォルトで(アプリケーションを実行しているユーザーのオペレーティングシステム名ではなく)特定のユーザー名で Django に接続する場合は、 DJANGO_USER 変数を必要な値に設定できます。 これは、次のコマンドラインオプションの設定に似ています。

--env DJANGO_USER=%env-var-value

このオプションは、 環境変数 フィールドを構成する代わりに、 実行オプション フィールドで明示的に設定できます。

実行オプション

サポートされているその他の docker run(英語) オプションを設定します。

例: コンテナーを my-net ネットワークに接続し、その my-app エイリアスを設定するには、次のように指定します。

--network my-net --network-alias my-app

コンテナーにアタッチする

コンテナーの標準入力、出力、エラーストリームに接続します。

これは、コマンドラインで -a または --attach オプションを使用するのと似ています。

コマンドプレビューを表示する

実行構成の実行に使用されるコマンドをプレビューします。

2026 年 7 月 14 日