# 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-chat-server/docker-compose.yml` | Standalone chat server dev | `cd veza-chat-server && docker compose up` | | `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`.