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