PyCharm 2024.2 ヘルプ

Docker Compose を使用してインタープリターを構成する

Django プラグインを有効にする

この機能は、デフォルトで PyCharm にバンドルされて有効になっている Django プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。

  1. Ctrl+Alt+S を押して設定を開き、プラグインを選択します。

  2. インストール済みタブを開き、Django プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。

前提条件

次の前提条件が満たされていることを確認してください。

  • 安定したインターネット接続があり、PyCharm が busybox:latest (BusyBox Docker 公式イメージ(英語)の最新バージョン) をダウンロードして実行できます。Docker を使用してインタープリターを正常に構成したら、オフラインにすることができます。

  • Docker がインストールされています。Docker はさまざまなプラットフォームにインストールできますが、ここでは macOS(英語) インストールを使用します。

    このチュートリアルを異なるプラットフォームで繰り返す必要がある場合は、Windows(英語) および Linux(英語) に Docker インストールを使用してください (Ubuntu、他のディストリビューション関連の手順も利用できます)。

  • Docker の使用を開始する前に、Docker プラグインが有効になっていることを確認してください。プラグインは PyCharm にバンドルされており、デフォルトで有効になっています。プラグインが有効になっていない場合は、プラグインのインストールの説明に従って、Ctrl+Alt+S 設定のプラグインページでプラグインを有効にしてください。

    設定ダイアログ (Ctrl+Alt+S) で、ビルド、実行、デプロイ | Docker を選択し、Docker デーモンに接続<あなたの operating system> のための Docker を選択します。例: macOS にいる場合は、Mac 用 Docker を選択します。詳細については、Docker 設定を参照してください。

Docker ベースのプロジェクトインタープリターに Python パッケージをインストールできないことに注意してください。

例を準備する

別のコンテナーで実行されている PostgreSQL データベースで Django アプリケーションを使用してみましょう。

  1. ウェルカム画面で、VCS から取得をクリックします。

  2. バージョン管理から取得ダイアログで、リモートリポジトリ(英語)の URL を指定し、クローンをクリックします。

  3. PyCharm は、requirements.txt ファイルに記録されたプロジェクト要件に基づいて仮想環境を作成することを提案します。

    Creating a virtual environment

    OK をクリックして環境を作成します。

  4. IDE が提供するもう 1 つのヒントは、データソースの検出です。データベースに接続をクリックしてデータベースを設定します。

    Detecting a datasource

    不足しているドライバーをダウンロードし、残りの構成オプションを確認する必要がある場合があります。

    Configuring a datasource

これが完了すると、例の準備が整い、docker containers の構成を開始できます。

この Django アプリケーションでは、データベース用とアプリケーション自体用の 2 つのコンテナーを作成しましょう。Docker Compose は 2 つのコンテナーをリンクします。

Docker と Docker Compose のファイルを追加

  1. プロジェクトツールウィンドウで、プロジェクトルートを右クリックし、コンテキストメニューから新規 | ファイルを選択します。ファイル名を入力します: Dockerfile

  2. 次のコードをコピーして Dockerfile ファイルに貼り付けます。

    FROM python:3.6.7 WORKDIR /app # By copying over requirements first, we make sure that Docker will cache # our installed requirements rather than reinstall them on every build COPY requirements.txt /app/requirements.txt RUN pip install -r requirements.txt # Now copy in our code, and run it COPY . /app EXPOSE 8000 CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
  3. 次に、プロジェクトルートをもう一度右クリックし、コンテキストメニューから新規 | ファイルを選択して、docker-compose.yml ファイルを作成します。

  4. 次のコードをコピーして docker-compose.yml ファイルに貼り付けます。

    version: '2' services: web: build: . ports: - "8000:8000" volumes: - .:/app links: - db db: image: "postgres:9.6" ports: - "5432:5432" environment: POSTGRES_PASSWORD: hunter2

    このファイルは、webdb の 2 つのサービスを定義し、リンクします。

Docker の設定

例の準備ができたため、Docker を設定しましょう。

  1. Ctrl+Alt+S を押して設定を開き、ビルド、実行、デプロイ | Docker を選択します。

  2. Add a docker server をクリックして、Docker サーバーを作成します。推奨されるデフォルト値を受け入れます。

    Docker settings

    Docker をカスタムの場所にインストールした場合は、Docker CLI 実行可能ファイルへのパスを指定する必要がある場合があります。

    変更を保存するには、OK をクリックします。

Docker Compose をリモートインタープリターとして設定する

ここで、Docker Compose に基づいてリモートインタープリターを定義しましょう。

  1. 以下のいずれか 1 つを実行します:

    • Python インタープリターセレクターをクリックして、新しいインタープリターを追加を選択します。

    • Ctrl+Alt+S を押して設定を開き、プロジェクト: <プロジェクト名> | Python インタープリターに移動します。利用可能なインタープリターのリストの横にあるインタープリターの追加リンクをクリックします。

    • Python インタープリターセレクターをクリックしてインタープリターの設定を選択します。利用可能なインタープリターのリストの横にあるインタープリターの追加リンクをクリックします。

  2. Docker Compose についてを選択します。

  3. サーバードロップダウンで Docker 構成を選択します。

  4. 構成ファイルdocker-compose.yml ファイルを指定し、サービスを選択します。

    Creating a new Docker Compose target

    必要に応じて、環境変数(英語)を指定してプロジェクト名を作成する(英語)を編集します。

  5. PyCharm が新しいターゲットを作成して構成するまで待ちます。

    Configuring a Docker Compose target
  6. コンテナーで使用するインタープリターを選択します。コンテナー内にすでに設定されている任意の virtualenv または conda 環境を選択するか、システムインタープリターを選択できます。

    Selecting a system interpreter for a Docker target
  7. OK をクリックします。

    構成されたリモートインタープリターがリストに追加されます。

Docker ツールウィンドウを使用する

Docker を構成すると、PyCharm のメインウィンドウの下部にサービスツールウィンドウが表示されます。services グループの横にあるガターで docker-compose up docker-compose up をクリックすると、db および web サービスを起動できます。

Docker window

サービスツールウィンドウで docker containers を管理する方法の詳細については、Docker を参照してください。

データベース資格情報を構成する

Django プロジェクトの settings.py ファイルの DATABASES セクションを変更して、データベース構成の詳細を追加します。

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'postgres', 'USER': 'postgres', 'PASSWORD': 'hunter2', 'HOST': 'db' } }

アプリケーションの実行

  1. メインメニューからツール | 「manage.py」タスクを実行するを選択し、migrate と入力して移行を実行し、Django アプリケーションを実行します。

  2. Django サーバーの実行 / デバッグ構成を作成します。これを行うには、メインメニューから実行 | 実行構成の編集を選択します。

    実行 / デバッグ構成ダイアログで、Add Run/Debug configuration for a Django Server 新規構成の追加をクリックし、Django サーバーを選択します。

    Run/Debug configuration for a Django server
  3. ホストフィールドを 0.0.0.0 に設定して、Docker コンテナーが外部要求に対して開かれていることを確認します。このアドレスでサーバーを起動できるようにするには、settings.pyALLOWED_HOSTS リストに 0.0.0.0 を追加します。

  4. 新しく作成した構成を実行するには、メインメニューから実行 | 実行 'RunDjangoApp' を選択します。

    Docker compose run

Web ブラウザーで出力を確認するには、http://localhost:8000 にアクセスしてください。

Django application output

アプリケーションをデバッグする

実行 / デバッグ構成を作成すると、アプリケーションをデバッグすることもできます。

  1. ブレークポイントを設定します (Django アプリケーションの場合は、テンプレートで設定できます)。

  2. 以下のいずれか 1 つを実行します:

    • メインメニューから実行 | デバッグ 'RunDjangoApp' を選択します。

    • RunDjangoApp 構成を選択した状態で、実行 / デバッグ構成ドロップダウンの横にある Start Debugger デバッグをクリックします。

コンテナー内のアプリケーションのデバッグの詳細については、Docker コンテナーでデバッグするを参照してください。

関連ページ:

プラグインのインストール

プラグインは PyCharm のコア機能を拡張します。例: プラグインをインストールして、次の機能を取得します。バージョン管理システム、課題追跡システム、ビルド管理サーバー、その他のツールとの統合。さまざまな言語とフレームワークのコーディング支援サポート。ショートカットのヒント、ライブプレビュー、ファイルウォッチャーなど。新しいプログラミング言語を学ぶのに役立つコーディング演習。プラグイン設定を開くを押して設定を開き、を選択します。マーケットプレースタブを使用して、JetBrains マーケット...

Docker 接続設定

PyCharm から Docker エンジン API にアクセスするための設定を指定します。Docker と PyCharm の統合の使用方法の詳細については、「Docker」を参照してください。Docker プラグインを有効にするこの機能は、デフォルトで PyCharm にバンドルされて有効になっている Docker プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、Doc...

Docker ツール設定

PyCharm が Docker デーモンと対話するために使用する Docker CLI 実行可能ファイルへのパスを指定します。Docker プラグインを有効にするこの機能は、デフォルトで PyCharm にバンドルされて有効になっている Docker プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、Docker プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択...

Python インタープリターを構成する

PyCharm の Python インタープリター:PyCharm で Python コードを使用するには、少なくとも 1 つの Python インタープリターを構成する必要があります。Python インストールで使用可能なシステムインタープリターを使用できます。また、Virtualenv、pipenv、Poetry、または conda 仮想環境を作成することもできます。仮想環境は、基本インタープリターとインストールされたパッケージで構成されます。PyCharm Professional では、SS...

Docker

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

実行 / デバッグ構成: Django テスト

Django プラグインを有効にするこの機能は、デフォルトで PyCharm にバンドルされて有効になっている Django プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、Django プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。このダイアログを使用して、Django テストの実行 / デバッグ構成を作成します。構成タブ:ターゲット実行す...