# 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, rabbitmq - `docker/docker-compose.override.yml` — adds mailcatcher for local dev - `docker/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`.