Project development requires not only programming skills but also the ability to set up an effective working environment. In this article, I'll share my experience in creating a dev environment for PHP projects using Docker. I'll explain how to organize the file structure, configure Dockerfile and docker-compose.yml, and share useful tips on optimization and security. Whether you're working on a pet project or preparing for team development, these practices will help you create a reliable and flexible development environment.

This environment is based on my favorite and most frequently used tools:
- Docker
for containerization  - Docker compose
for container management  - Latest version of PHP
 - Composer
for PHP dependency management  - xDebug
for application debugging  - RoadRunner
for running the application in Long-Running mode  - PHP framework Yii3
 - PostgreSQL
database, as it supports keep-alive connections, unlike some others .