Run/Debug Configuration: Docker
This page describes the configuration-specific items as well as options that are common for all run/debug configurations. To learn how to use this configuration, see Running containers, Running a container from a Dockerfile, and Docker Compose.
Docker run configurations enable you to integrate Docker into your development process. Settings depend on the type of the Docker run configuration relevant to your needs. Some settings are common, while others are specific in each case.
PyCharm provides Docker support using the Docker plugin. The plugin is bundled and enabled by default. For more information, see Docker.
Docker Image run configuration settings
The following settings are available for the Docker Image run configuration:
Item | Description |
---|---|
Image ID | Specify the ID of the image to run. |
Container name | Specify an optional name for the container. If empty, Docker will generate a random name for the container. |
Entrypoint | Override the default ENTRYPOINT set by the image. Similar to using the --entrypoint option with docker run . |
Command | Override the default CMD set by the image. Similar to specifying the optional COMMAND argument after docker run . |
Publish exposed ports to the host interfaces | Select All to expose all container ports to the host or select Specify to define specific container ports to bind. |
Bind ports | Specify the list of port bindings. Similar to using the -p option with docker run . |
Bind mounts | Specify the list of volume bindings. Similar to using the -v option with docker run . |
Environment variables | Specify the list of environment variables. Similar to using the -e option with docker run . |
Run options | Specify arbitrary options for the |
Command preview | Preview the resulting command that will be used to execute the run configuration. |
Docker-compose run configuration settings
The following settings are available for the Docker-compose run configuration:
Item | Description |
---|---|
Compose file | Specify the Docker Compose files to use for this run configuration. |
Dockerfile run configuration settings
The following settings are available for the Dockerfile run configuration:
Item | Description |
---|---|
Dockerfile | Specify the Dockerfile to be used for this run configuration. |
Image tag | Specify the name and tag for the built image. Similar to using the -t option with docker build . |
Build args | Override the default build-time variables. Similar to using the --build-arg option with docker build . |
Run built image | Select to run a container based on the built image. |
Container name | Specify an optional name for the container. If empty, Docker will generate a random name for the container. |
Entrypoint | Override the default ENTRYPOINT set by the image. Similar to using the --entrypoint option with docker run . |
Command | Override the default CMD set by the image. Similar to specifying the optional COMMAND argument after docker run . |
Publish exposed ports to the host interfaces | Select All to expose all container ports to the host or select Specify to specify which container ports to bind. |
Bind ports | Specify the list of port bindings. Similar to using the -p option with docker run . |
Bind mounts | Specify the list of volume bindings. Similar to using the -v option with docker run . |
Environment variables | Specify the list of environment variables. Similar to using the -e option with docker run . |
Command line options | Specify arbitrary options for the |
Command preview | Preview the resulting command that will be used to execute the run configuration. |
Common
When you edit a run configuration (but not a run configuration template), you can specify the following options:
Item | Description |
---|---|
Name | Specify a name for the run/debug configuration to quickly identify it when editing or running the configuration, for example, from the Run popup Alt+Shift+F10. |
Allow parallel run | Select to allow running multiple instances of this run configuration in parallel. By default, it is disabled, and when you start this configuration while another instance is still running, PyCharm suggests to stop the running instance and start another one. This is helpful when a run/debug configuration consumes a lot of resources and there is no good reason to run multiple instances. |
Store as project file | Save the file with the run configuration settings to share it with other team members. The default location is .idea/runConfigurations. However, if you do not want to share the .idea directory, you can save the configuration to any other directory within the project. By default, it is disabled, and PyCharm stores run configuration settings in .idea/workspace.xml. |
Toolbar
The tree view of run/debug configurations has a toolbar that helps you manage configurations available in your project as well as adjust default configurations templates.
Item | Shortcut | Description |
---|---|---|
Alt+Insert | Create a run/debug configuration. | |
Alt+Delete | Delete the selected run/debug configuration. Note that you cannot delete default configurations. | |
Ctrl+D | Create a copy of the selected run/debug configuration. Note that you create copies of default configurations. | |
The button is displayed only when you select a temporary configuration. Click this button to save a temporary configuration as permanent. | ||
View and edit the template (that is, the default run/debug configuration settings). The templates are displayed under the Templates node and used for newly created configurations. | ||
/ | Alt+Up/ Alt+Down | Move the selected run/debug configuration up and down in the list. The order of configurations in the list defines the order, in which the configurations appear when you choose a run/debug configuration. Default templates of run/debug configurations are always sorted alphabetically. |
Move into new folder / Create new folder. You can group run/debug configurations by placing them into folders. To create a folder, select the configurations within a category, click , and specify the folder name. If only a category is in focus, an empty folder is created. Then, to move a configuration into a folder, between the folders or out of a folder, use drag or and buttons. To remove grouping, select a folder and click . | ||
Click this button to sort configurations in the alphabetical order. |
Before Launch
In this area, you can specify tasks to be performed before starting the selected run/debug configuration. The tasks are performed in the order they appear in the list.
Item | Shortcut | Description |
---|---|---|
Alt+Insert | Click this icon to add one of the following available tasks:
| |
Alt+Delete | Click this icon to remove the selected task from the list. | |
Enter | Click this icon to edit the selected task. Make the necessary changes in the dialog that opens. | |
/ | Alt+Up/ Alt+Down | Click these icons to move the selected task one line up or down in the list. The tasks are performed in the order that they appear in the list. |
Show this page | Select this checkbox to show the run/debug configuration settings prior to actually starting the run/debug configuration. | |
Activate tool window | By default this checkbox is selected and the Run or the Debug tool window opens when you start the run/debug configuration. Otherwise, if the checkbox is cleared, the tool window is hidden. However, when the configuration is running, you can open the corresponding tool window for it yourself by pressing Alt+4 or Alt+5. |