Docker を使用してインタープリターを構成する
導入
PyCharm と Docker の統合により、Docker コンテナーにデプロイされたさまざまな構成の開発環境でアプリケーションを実行できます。
前提条件
次の前提条件が満たされていることを確認してください。
Docker のドキュメント(英語)に従って、Docker がインストールされます。
Docker はさまざまなプラットフォームにインストールできますが、ここでは Windows(英語) インストールを使用します。
このチュートリアルを別のプラットフォームで繰り返す必要がある場合は、macOS(英語) および Linux(英語) に Docker インストールを使用してください (Ubuntu、他のディストリビューション関連の手順も利用できます)。
安定したインターネット接続があり、PyCharm が
busybox:latest
(BusyBox Docker 公式イメージ(英語)の最新バージョン) をダウンロードして実行できます。Docker を使用してインタープリターを正常に構成したら、オフラインにすることができます。Docker の使用を開始する前に、Docker プラグインが有効になっていることを確認してください。プラグインは PyCharm にバンドルされており、デフォルトで有効になっています。プラグインが有効になっていない場合は、プラグインのインストールの説明に従って、Ctrl+Alt+S 設定のプラグインページでプラグインを有効にしてください。
設定ダイアログ (Ctrl+Alt+S) で、 を選択し、Docker デーモンに接続の <あなたの operating system> のための Docker を選択します。例: macOS にいる場合は、Mac 用 Docker を選択します。詳細については、Docker 設定を参照してください。
Docker ベースのプロジェクトインタープリターに Python パッケージをインストールできないことに注意してください。
例の準備
Python プロジェクトを作成する QuadraticEquation
、Solver.py ファイルを追加し、次のコードをコピーして貼り付けます。
リモートインタープリターとしての Docker の設定
それでは、Docker ベースのリモートインタープリターを定義しましょう。
以下のいずれか 1 つを実行します:
Python インタープリターセレクターをクリックして、新しいインタープリターを追加を選択します。
Ctrl+Alt+S を押して設定を開き、 に移動します。利用可能なインタープリターのリストの横にあるインタープリターの追加リンクをクリックします。
Python インタープリターセレクターをクリックしてインタープリターの設定を選択します。利用可能なインタープリターのリストの横にあるインタープリターの追加リンクをクリックします。
Docker についてを選択します。
Docker サーバードロップダウンで既存の Docker 構成を選択します。
または、 をクリックし、次の手順を実行して新しい Docker 構成を作成します。
- Docker 構成を作成する
をクリックして Docker 構成を追加し、Docker デーモンへの接続方法を指定します。
接続設定は、Docker のバージョンとオペレーティングシステムによって異なります。詳細については、Docker 接続設定を参照してください。
ダイアログの下部に接続完了メッセージが表示されます。
Windows で Docker または macOS を使用するときに、Docker デーモンを実行している仮想マシンにローカルパスをマッピングする方法の詳細については、Windows および macOS ホストの仮想マシンパスマッピングを参照してください。マッピングされたローカルパスの外部にあるディレクトリに対してボリュームやバインドマウントを使用することはできません。
このテーブルは、Docker がネイティブに実行され、コンテナーに任意のディレクトリをマウントできる Linux ホストでは使用できません。
次のアクションは、ビルド済みのイメージを Docker レジストリからプルするか、イメージを Dockerfile からローカルにビルドするかによって異なります。
- Docker イメージをプルする
プルまたは既存を使用を選択し、イメージタグフィールドで目的のイメージのタグを指定します。
- Docker イメージを作成する
ビルドを選択し、必要に応じて Dockerfile およびコンテキストフォルダーフィールドのデフォルト値を変更します。
必要に応じて、オプションセクションを展開し、次のように指定します。
イメージタグ
ビルドされたイメージのオプションの名前とタグを指定します。
これは、将来的にイメージを参照できます。フィールドを空白のままにすると、イメージにはランダムな一意の識別子のみが含まれます。
ビルドオプション
サポートされている
docker build
オプション(英語)を設定します。例:
--label
オプションを使用して、ビルドされたイメージのメタデータを指定できます。ビルド引数
ビルドプロセス中に通常の環境変数のようにアクセスできるビルド時の変数の値を指定しますが、中間イメージまたは最終イメージには保持されません。
これは、
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複数の引数をスペースで区切って指定できます。
PyCharm が Docker デーモンに接続するのを待ち、コンテナーのイントロスペクションを完了します。
次に、Docker コンテナーで使用するインタープリターを選択します。コンテナー内にすでに設定されている任意の virtualenv または conda 環境を選択するか、システムインタープリターを選択できます。
OK をクリックします。
構成されたリモートインタープリターがリストに追加されます。
Docker コンテナーでアプリケーションを実行する
ガターで、main
句の横にある アイコンをクリックし、実行 'solver' を選択します。
スクリプトは実行ツールウィンドウで起動されます。スクリプトに値を指定します。
サービスツールウィンドウに切り替えて、コンテナーの詳細をプレビューします。コンテナーノードを展開し、実行中のコンテナーを選択します。
ログタブにも同じ実行結果が含まれていることに注意してください。
Docker コンテナーでのアプリケーションのデバッグ
次に、アプリケーションをデバッグしましょう。そのために、行番号をクリックして、d
を計算する行にブレークポイントを置きましょう。次に、ガターの をクリックし、 を選択します。
デバッガーは Docker コンテナーでも実行されます。
ただし、このコンテナーの ID は異なるため、名前も異なります。
要約
PyCharm を使用して何がなされたのかをまとめましょう。
プロジェクトを作成し、Python スクリプトを追加しました。
リモートインタープリターを設定しました。
Docker コンテナーでスクリプトを実行し、デバッグしました。
最後に、Docker ツールウィンドウを起動し、ターミナルですべての詳細を確認しました。
追加情報については、次のビデオチュートリアルを参照してください。
関連ページ:
Docker
Docker は、分離された再現可能な環境で実行可能ファイルをデプロイおよび実行するためのツールです。これは、たとえば、本番環境と同じ環境でコードをテストする場合に役立ちます。PyCharm は Docker 機能を統合し、Docker イメージの作成、Docker コンテナーの実行、Docker Compose アプリケーションの管理、パブリックおよびプライベート Docker レジストリの使用など、IDE から直接実行するための支援を提供します。Docker コンテナーにデプロイされたさまざま...
プラグインのインストール
プラグインは PyCharm のコア機能を拡張します。例: プラグインをインストールして、次の機能を取得します。バージョン管理システム、課題追跡システム、ビルド管理サーバー、その他のツールとの統合。さまざまな言語とフレームワークのコーディング支援サポート。ショートカットのヒント、ライブプレビュー、ファイルウォッチャーなど。新しいプログラミング言語を学ぶのに役立つコーディング演習。プラグイン設定を開くを押して設定を開き、を選択します。マーケットプレースタブを使用して、JetBrains マーケット...
Docker 接続設定
PyCharm から Docker エンジン API にアクセスするための設定を指定します。Docker と PyCharm の統合の使用方法の詳細については、「Docker」を参照してください。Docker プラグインを有効にするこの機能は、デフォルトで PyCharm にバンドルされて有効になっている Docker プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、Doc...
Python プロジェクトを作成する
純粋な Python プロジェクトは、Python プログラミングを対象としています。プロジェクトは、ソースコード、テスト、使用するライブラリ、個人設定を 1 つのユニットに整理できます。プロジェクトが不要な場合は、LightEdit モードでファイルを編集できます。プロジェクトを作成するには、次のいずれかを実行します。に移動します。ウェルカム画面で、新規プロジェクトをクリックします。、新規プロジェクトダイアログで、プロジェクト名とその場所を指定します。ダイアログは、PyCharm エディション...
プロジェクトを作成する
プロジェクトを作成したら、新しい項目の追加を開始できます。新しいディレクトリ、パッケージ、ファイルを作成したり、既存のファイルやフォルダーを追加したりできます。新規項目の作成:新規ファイルを作成する以下のいずれか 1 つを実行します: プロジェクトツールウィンドウ () で、新しいファイルを作成するディレクトリまたはパッケージを選択し、メインメニューからを選択します。ディレクトリまたはパッケージを右クリックし、コンテキストメニューから新規を選択します。ディレクトリを選択し、を押します。、目的の...
Python インタープリターを構成する
PyCharm の Python インタープリター:PyCharm で Python コードを使用するには、少なくとも 1 つの Python インタープリターを構成する必要があります。Python インストールで使用可能なシステムインタープリターを使用できます。また、Virtualenv、pipenv、Poetry、または conda 仮想環境を作成することもできます。仮想環境は、基本インタープリターとインストールされたパッケージで構成されます。PyCharm Professional では、SS...