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: image: mongo:7.0 container_name: voxpopuli_mongo environment: MONGO_INITDB_DATABASE: voxpopuli_reports ports: - "27017:27017" volumes: - mongo_data:/data/db healthcheck: test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] interval: 10s timeout: 5s retries: 5 mongodb_nots: image: mongo:7.0 container_name: voxpopuli_mongo_2 environment: MONGO_INITDB_DATABASE: voxpopuli_notifications ports: - "27018:27017" volumes: - mongo_data_notifications:/data/db healthcheck: test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] interval: 10s timeout: 5s retries: 5 postgres: image: postgres:15-alpine container_name: voxpopuli_postgres environment: POSTGRES_USER: voxpopuli POSTGRES_PASSWORD: voxpopuli_pass POSTGRES_DB: voxpopuli_metrics ports: - "5432:5432" volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U voxpopuli -d voxpopuli_metrics"] interval: 10s timeout: 5s retries: 5 volumes: mysql_data: mongo_data: mongo_data_notifications: postgres_data: