Files
VoxPopuli/docker-compose.yaml
2026-04-29 12:28:11 -06:00

79 lines
2.0 KiB
YAML

version: '3.8'
services:
mysql:
image: mysql:8.0
container_name: voxpopuli_mysql
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: voxpopuli_users
MYSQL_USER: voxpopuli
MYSQL_PASSWORD: voxpopuli_pass
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 10s
timeout: 5s
retries: 5
mongodb-reports:
image: mongo:7.0
container_name: voxpopuli_mongo_reports
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin_password
MONGO_INITDB_DATABASE: voxpopuli_reports
ports:
- "27017:27017"
volumes:
- mongo_reports_data:/data/db
healthcheck:
test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
interval: 10s
timeout: 5s
retries: 5
command: mongod --auth
mongodb-notifications:
image: mongo:7.0
container_name: voxpopuli_mongo_notifications
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin_password
MONGO_INITDB_DATABASE: voxpopuli_notifications
ports:
- "27018:27017"
volumes:
- mongo_notifications_data:/data/db
healthcheck:
test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
interval: 10s
timeout: 5s
retries: 5
command: mongod --auth
rabbitmq:
image: rabbitmq:3.13-management
container_name: voxpopuli_rabbitmq
environment:
RABBITMQ_DEFAULT_USER: voxpopuli
RABBITMQ_DEFAULT_PASS: voxpopuli_pass
ports:
- "5672:5672"
- "15672:15672" # Management UI
volumes:
- rabbitmq_data:/var/lib/rabbitmq
healthcheck:
test: ["CMD", "rabbitmq-diagnostics", "-q", "ping"]
interval: 10s
timeout: 5s
retries: 5
volumes:
mysql_data:
mongo_reports_data:
mongo_notifications_data:
rabbitmq_data: