veza/config/docker/README.md

43 lines
1.7 KiB
Markdown
Raw Normal View History

# Docker Compose Files — Usage Guide
This project uses multiple `docker-compose` files for different environments. After the cleanup in the audit remediation, the following files remain and are canonical:
## Root-level files
| File | Purpose | Usage |
|------|---------|-------|
| `docker-compose.yml` | Local development | `docker compose up` |
| `docker-compose.prod.yml` | **Production** (canonical) | `docker compose -f docker-compose.prod.yml up -d` |
| `docker-compose.staging.yml` | Staging environment | `docker compose -f docker-compose.staging.yml up -d` |
| `docker-compose.test.yml` | Integration tests | `docker compose -f docker-compose.test.yml up -d` |
## Service-specific files
| File | Purpose | Usage |
|------|---------|-------|
| `veza-stream-server/docker-compose.yml` | Standalone stream server dev | `cd veza-stream-server && docker compose up` |
## Infrastructure monitoring
| File | Purpose | Usage |
|------|---------|-------|
| `config/docker/docker-compose.local.yml` | Local monitoring (Prometheus, Grafana) | `docker compose -f config/docker/docker-compose.local.yml up -d` |
## Deleted files (audit remediation C9)
The following deprecated/duplicate files were removed:
- `docker-compose.production.yml` (root) — superseded by `docker-compose.prod.yml`
- `config/docker/docker-compose.production.yml` — deprecated copy
- `veza-stream-server/docker-compose.production.yml` — deprecated copy
## Production deployment notes
`docker-compose.prod.yml` requires the following environment variables to be set (it will **fail** if any are missing):
- `DB_PASS` — PostgreSQL password
- `JWT_SECRET` — JWT signing secret (minimum 32 characters)
- `RABBITMQ_PASS` — RabbitMQ password
All database connections use `sslmode=require`.