Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
48 lines
1.4 KiB
Markdown
48 lines
1.4 KiB
Markdown
# 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`.
|