Makefile script to give you a simple Symfony environment out-of-the-box, similar to Laravel Sail.
- Nginx
- Postgres
- PHP 8.2
- Node.js with Yarn
- Xdebug
Clone it. Run make create-skeleton or make create-webapp.
Other utility commands are provided; to see all available features, just run make without any additional arguments.
In order keep the underlying Docker infrastructure isolated from the Symfony environment, the application code will be
installed to an app directory which is generated when you run make create-....
Commands such as make php-shell or make node-shell will mount directly at the Symfony project's root in the app
directory, so you don't need to worry about the extra directory level.
Xdebug is included, and turned off by default. To enable it, set the XDEBUG_MODE environment variable
in docker/docker-compose-xdebug.override.yml to whatever mode(s) you want.
Lots of other settings can be modified through the XDEBUG_CONFIG environment variable, described on the official
Xdebug manual page.
Additionally, you can modify the docker/php/conf.d/xdebug.ini file to make any config changes which can't be expressed
via the XDEBUG_CONFIG variable.
After you've made any edits, you should then run make restart to load your config changes into the Docker PHP
container.
Example:
services:
php:
environment:
XDEBUG_MODE: develop,debug,coverage
XDEBUG_CONFIG: xdebug.cli_color=2 log=/tmp/xdebug.log