Configuring Remote Interpreters via Docker Compose
This feature is supported in the Professional edition only.
In this section:
Prerequisite
Before you start working with Docker Compose, make sure that the Docker Compose integration plugin is enabled. The plugin is bundled with PyCharm and is activated by default. If the plugin is not activated, enable it on the Plugins page of the Settings / Preferences Dialog as described in Enabling and Disabling Plugins.
Limitation
As of this writing, Docker Compose integration in PyCharm is not supported on Windows.
Using Docker Compose to configure a remote interpreter
To configure a remote Python interpreter, follow these steps:
- In the Project Interpreters page of the Settings/Preferences dialog box, click .
- From the drop-down list, choose .
- In this dialog box that opens, do the following:
- Click the radio button Docker Compose.
- Choose the desired server from the drop-down list, or click New.
- In the Configuration file(s) field, specify the required configuration files, by clicking .
Use the toolbar , , , to make up the list of coonfiguration files.
Note that if the path points to a specific file (for example,
docker-compose.yml
), then this configuration will be used. If the path points to a directory, then the configuration is defined by the filedocker-compose.yml
and (if exists)docker-compose.override.yml
. - In the field Environment variables, specify the environment variables in the
docker-compose.yml
file. Click the browse button next to this field, and specify the required environment variables using the toolbar buttons , , , . - Specify the service that represent your project.
- The Python interpreter path field displays the path to the desired Python executable. You can accept default, or specify a different one.
- Click OK in the Configure Remote Python Interpreter dialog box. The configured remote interpreter is added to the list.
From this point, autocompletion, code inspections, as well as other features, will be driven by the interpreter from the Docker container derived from the service description in docker-compose.yml
file.