Configuring Remote Interpreters via Docker

Prerequisite

Before you start working with Docker, make sure that Docker integration plugin is enabled.
The plugin is bundled with PyCharm and activated by default. If it is not, enable the plugin as described in the section Enabling and Disabling Plugins.

Configuring remote interpreter using Docker

To set up a Python interpreter inside a Docker container for your project, follow these steps:

If the required Docker machine is not available, click New, and in the dialog box that
opens, specify the machine name, API URL, and the certificates folder.
If you want to import credentials of an existing Docker machine, select the corresponding check box.

The configured remote interpreter is set as the project interpreter. Now you can run, debug and profile your application using Python inside a Docker
container.

Note that for the project interpreters created via Docker, the field Path mappings is
always empty, and packages toolbar is not
available.

All the packages should be already installed in the Docker image. If some packages are missing,
then you will have to create a new Docker image, as described on the page
Quickstart Guide: Compose and Django.

Limitation

As of this writing, on Windows and MacOS platforms running, debugging and profiling applications is only
possible for the projects residing in the user home directory. If necessary, configure other
directories in the VirtualBox settings.

Docker Machine on Linux does not share user home folder, and any other folders as well. Thus, for running,
debugging and profiling applications, the user should add shared folders with the project sources to the
VirtualBox Docker virtual machine manually. These shared folders on VM should be mapped one to one to
the folders on the host Linux machine, i.e.
(host) /home/user <=> /home/user (VM) or
(host) /home/my/project <=> /home/my/project (VM)