PyCharm 2024.3 ヘルプ

Dockerfile 実行構成

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

Dockerfile run configuration dialog

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

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

項目

説明

名前

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

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

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

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

サーバー

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

Dockerfile

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

イメージタグ

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

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

コンテナー名

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

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

起動前

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

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

the Up button および the Down button を使用してリスト内のタスクを移動し、タスクを実行する順序を変更します。タスクを選択し、the Edit button をクリックしてタスクを編集します。the Remove button をクリックして、選択したタスクをリストから削除します。

このページを表示する

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

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

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

  • 表示 | ツールウィンドウ | 実行または 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 オプションを使用して、ビルドされたイメージのメタデータを指定できます。

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

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

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

バインドポート

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

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

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

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

-p 5433:5432

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

エントリポイント

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

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

コマンド

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

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

バインドマウント

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

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

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

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

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

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

環境変数

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

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

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

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

--env DJANGO_USER=%env-var-value

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

実行オプション

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

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

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

コンテナーにアタッチ

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

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

コマンドプレビューの表示

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

関連ページ:

Docker

Docker は、分離された再現可能な環境で実行可能ファイルをデプロイおよび実行するためのツールです。これは、たとえば、本番環境と同じ環境でコードをテストする場合に役立ちます。PyCharm は Docker 機能を統合し、Docker イメージの作成、Docker コンテナーの実行、Docker Compose アプリケーションの管理、パブリックおよびプライベート Docker レジストリの使用など、IDE から直接実行するための支援を提供します。Docker コンテナーにデプロイされたさまざま...

実行ツールウィンドウ

実行ツールウィンドウには、アプリケーションによって生成された出力が表示されます。各タブの外観は、実行中のアプリケーションの種類によって異なり、追加のツールボックスとペインを含めることができます。Vue.js アプリケーションをデバッグする、Angular アプリケーションをデバッグする、Vite アプリケーションをデバッグする、React アプリケーションをデバッグするから詳細を学びます。ツールウィンドウのタブ:タブをピン留め複数のアプリケーションを実行している場合、各アプリケーションは、適用...

デバッグツールウィンドウ

デバッガーセッションを開始すると、デバッグツールウィンドウが開きます。このウィンドウを使用して、デバッガーセッションを制御し、プログラムデータ (フレーム、変数など) を表示および分析し、デバッガーアクションを実行します。デフォルトでは、プログラムがブレークポイントに到達したときにデバッグツールウィンドウが開き、セッションが終了しても非表示になりません。この動作を変更するには、ビルド、実行、デプロイ | デバッガー設定ページに移動し、ブレークポイントでデバッグウィンドウを表示するチェックボック...

サービスツールウィンドウ

サービスツールウィンドウを使用すると、実行 / デバッグ構成、データベースセッション、Docker 接続など、ソフトウェア開発中に役立つさまざまなサービスを管理できます。プラグイン開発者は、IntelliJ プラットフォーム API を通じて他のサービスを追加できます。メインツールバーには、すべてのサービスタイプに共通の次のボタンとメニューが含まれています。すべて展開リスト内のすべての項目を展開します。すべて折りたたむリスト内のすべての項目を折りたたみます。グループ化サービスのリストを整理する方...

Docker イメージ実行構成

このタイプの構成を使用して、以前にプルまたはビルドしたローカルに存在するイメージから Docker コンテナーを実行します。Docker は次の構文で docker run コマンドを使用します。docker run [OPTIONS] IMAGE [COMMAND] [ARG...]Docker イメージ実行構成のオプションを使用して、このコマンドのすべての引数を設定できます。デフォルトでは、Docker イメージ構成には以下のオプションがあります。名前実行構成の名前を指定して、編集または実行時に...

Docker compose 実行構成

このタイプの構成を使用して、マルチコンテナー Docker アプリケーションを実行します。Docker は、docker compose コマンドを使用して、マルチコンテナーアプリケーションを定義、構成、実行します。コンテナーをビルド、作成、起動、アタッチする主なコマンドは、docker compose up です。デフォルトでは、Docker Compose 構成には以下のオプションがあります。名前実行構成の名前を指定して、編集または実行時に他の構成の間ですばやく識別できるようにします。プロジェクト...