Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1.4 KiB
1.4 KiB
share-control
Symfony 8.1 webapp running on nginx + php-fpm 8.4, MySQL and RabbitMQ, with Mailcatcher for local email testing.
Requirements
- Docker & Docker Compose v2
Getting started
make build
make up
make composer c=install
The app is then available at http://localhost:8080
| Service | URL |
|---|---|
| App | http://localhost:8080 |
| Mailcatcher | http://localhost:1080 |
| RabbitMQ management | http://localhost:15672 (guest/guest) |
Common commands
make up # start the stack (dev, includes mailcatcher)
make down # stop the stack
make prod # start without the dev-only mailcatcher container
make sh # shell into the php container
make composer c="require some/package"
make console c="cache:clear"
Layout
All Docker assets live under docker/:
docker/docker-compose.yml— nginx, php, mysql, rabbitmqdocker/docker-compose.override.yml— adds mailcatcher for local devdocker/php,docker/nginx,docker/mysql— per-service Dockerfile/config
Default dev credentials (MySQL, RabbitMQ) live in docker/.env and are
mirrored in .env/.env.dev for Symfony. Override host-specific values
(e.g. your UID/GID) in a gitignored docker/.env.local.