services: redis: container_name: scorify-redis image: redis:7-alpine restart: unless-stopped volumes: - scorify-redis:/data ports: - ${REDIS_PORT}:${REDIS_PORT} command: redis-server --requirepass $REDIS_PASSWORD --port $REDIS_PORT environment: REDIS_PASSWORD: ${REDIS_PASSWORD} REDIS_PORT: ${REDIS_PORT} postgres: container_name: scorify-db image: postgres:15-alpine restart: unless-stopped volumes: - scorify-postgres:/var/lib/postgresql/data ports: - 5432:5432 environment: POSTGRES_PORT: ${POSTGRES_PORT} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} scorify: container_name: scorify-server build: context: . dockerfile: Dockerfile.scorify restart: unless-stopped volumes: - scorify-server:/app/files ports: - 8080:8080 - 50051:50051 command: ["server"] depends_on: - redis - postgres - rabbitmq environment: DOMAIN: ${DOMAIN} PORT: ${PORT} INTERVAL: ${INTERVAL} JWT_TIMEOUT: ${JWT_TIMEOUT} JWT_SECRET: ${JWT_SECRET} REDIS_HOST: ${REDIS_HOST} REDIS_PORT: ${REDIS_PORT} REDIS_PASSWORD: ${REDIS_PASSWORD} POSTGRES_HOST: ${POSTGRES_HOST} POSTGRES_PORT: ${POSTGRES_PORT} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} RABBITMQ_HOST: ${RABBITMQ_HOST} RABBITMQ_PORT: ${RABBITMQ_PORT} RABBITMQ_DEFAULT_USER: ${RABBITMQ_DEFAULT_USER} RABBITMQ_DEFAULT_PASS: ${RABBITMQ_DEFAULT_PASS} RABBITMQ_MINION_USER: ${RABBITMQ_MINION_USER} RABBITMQ_MINION_PASS: ${RABBITMQ_MINION_PASS} minion: container_name: scorify-minion build: context: . dockerfile: Dockerfile.scorify restart: unless-stopped command: ["minion"] environment: DOMAIN: ${DOMAIN} PORT: ${PORT} INTERVAL: ${INTERVAL} RABBITMQ_HOST: ${RABBITMQ_HOST} RABBITMQ_PORT: ${RABBITMQ_PORT} RABBITMQ_DEFAULT_USER: ${RABBITMQ_DEFAULT_USER} RABBITMQ_DEFAULT_PASS: ${RABBITMQ_DEFAULT_PASS} RABBITMQ_MINION_USER: ${RABBITMQ_MINION_USER} RABBITMQ_MINION_PASS: ${RABBITMQ_MINION_PASS} frontend: container_name: scorify-frontend build: context: . dockerfile: Dockerfile.frontend args: DOMAIN: ${DOMAIN} PORT: ${PORT} restart: unless-stopped ports: - 80:80 - 443:443 - 443:443/udp volumes: - scorify-caddy-data:/data - scorify-caddy-config:/config environment: DOMAIN: ${DOMAIN} PORT: ${PORT} VITE_DOMAIN: ${DOMAIN} VITE_PORT: ${PORT} depends_on: - scorify rabbitmq: container_name: scorify-rabbitmq image: rabbitmq:3.13.6-management-alpine restart: unless-stopped ports: - 15672:15672 - ${RABBITMQ_PORT}:5672 environment: RABBITMQ_DEFAULT_USER: ${RABBITMQ_DEFAULT_USER} RABBITMQ_DEFAULT_PASS: ${RABBITMQ_DEFAULT_PASS} RABBITMQ_MINION_USER: ${RABBITMQ_MINION_USER} RABBITMQ_MINION_PASS: ${RABBITMQ_MINION_PASS} volumes: scorify-redis: scorify-postgres: scorify-server: scorify-caddy-data: scorify-caddy-config: