PhpStorm 2026.2 Help

Docker Compose

Docker Compose is used to run multi-container applications. For example, you can run a web server, a backend database, and your application code as separate services. Each service can be scaled by adding more containers if necessary. This enables you to perform efficient development and testing in a dynamic environment, similar to production.

Enable the Docker plugin

This functionality relies on the Docker plugin, which is bundled and enabled in PhpStorm by default. If the relevant features are not available, make sure that you did not disable the plugin.

  1. Press Ctrl+Alt+S to open settings and then select Plugins.

  2. Open the Installed tab, find the Docker plugin, and select the checkbox next to the plugin name.

PhpStorm recognizes Docker Compose files and marks them with the icon. It also adds gutter icons to run various services defined in the Docker Compose file.

Docker Compose file

Create a Docker Compose file

  1. In the Project tool window (Alt+1) , right-click the project root, select New or press Alt+Insert, and then select Docker Compose File.

    Create a docker-compose.yml
  2. In the popup that opens, accept the default Docker Compose file name or specify a custom one and press Enter.

    Create a docker-compose.yml

Complete a service configuration

  1. Open a Docker Compose file in the editor.

  2. Start typing the service name. PhpStorm will display the Services popup, where you can select the corresponding configuration.

    Docker Compose completion. Choose a service

Run a multi-container Docker application

  1. Define necessary services in one or several Docker Compose files.

  2. In the main menu, go to Run | Edit Configurations.

  3. Click The Add icon, point to Docker and then click Docker Compose.

    The Docker Compose configuration
  4. Specify the Docker Compose files with your service definitions. If necessary, you can define the services that this configuration will start, specify environment variables, and force building of images before starting corresponding containers (that is, add the --build option for the docker compose up command).

    For more information about the available options, refer to Docker compose run configuration.

  5. Click OK to save the Docker Compose run configuration, select it in the main toolbar, and click the Run button or press Shift+F10 to start the configuration.

When Docker Compose runs your multi-container application, you can use the Services tool window (Alt+8) to control specific services and interact with containers. The containers that run as part of Docker Compose are listed under the dedicated Compose nodes, not under the Containers node (which is only for standalone containers).

When you open a Docker Compose file in the editor, PhpStorm displays inlay hints with statuses of services and available port actions.

  • Service status

    A status inlay hint is displayed next to each service name and indicates whether the service is running or failed. Clicking the inlay hint you navigates you to container logs in the Services tool window.

    Service status in a Docker Compose file in the editor
  • Port actions (Open URL)

    For services that expose ports, PhpStorm provides quick actions directly in the editor:

    • Open in browser: opens the service URL in the default browser.

    • Connect to database: opens the corresponding database connection workflow, allowing you to inspect the database and run queries directly from the IDE. For more details, refer to Data sources.

Scale a service

  1. In the Services tool window, select the service you want to scale and click The Scale button or select Scale from the context menu.

    The Scale context menu item
  2. In the Scale dialog, specify how many containers you want for this service and click OK.

Stop a running service

  • In the Services tool window, select the service and click The Stop button or select Stop from the context menu.

    The Stop context menu item

Stop all running services

  • In the Services tool window, select the Compose node and click The Stop button or select Stop from the context menu.

Bring your application down

  • In the Services tool window, select the Compose node and click The Down button or select Down from the context menu.

    Docker Compose stop all services

This stops and removes containers along with all related networks, volumes, and images.

Open the Docker Compose file that was used to run the application

  • In the Services tool window, right-click the Compose node or a nested service node and then click Jump to Source in the context menu or press F4.

26 June 2026