# Copy this file to `docker-compose.yml` and modify it to your liking. # Copy `.env.example` to `.env` to configure environment variables. services: bot: build: context: . dockerfile: ./bot/Dockerfile environment: - DB_HOST=mongo:27017 - DB_USERNAME=mogus - DB_PASS - DB_NAME=admin - BOT_TOKEN - BOT_OWNERS - LOG_WEBHOOK - NODE_ENV=production - API_WS_URL=ws://api:9000/internal/ws - API_WS_TOKEN=${INTERNAL_API_TOKEN} - WEB_UI_URL=${PUBLIC_WEB_URL} - BOT_PREFIX - BOT_METRICS_PORT - BOT_METRICS_MSG_PING_CHANNEL - BOT_STATUS - BOT_STATUS_INTERVAL - REVOLT_API_URL # Uncomment if you enabled Prometheus metrics #ports: # - 127.0.0.1:${BOT_METRICS_PORT}:${BOT_METRICS_PORT} depends_on: - mongo - api restart: unless-stopped api: build: context: . dockerfile: ./api/Dockerfile environment: - BOT_API_TOKEN=${INTERNAL_API_TOKEN} - DB_HOST=mongo:27017 - DB_USERNAME=mogus - DB_PASS - DB_NAME=admin - REDIS_URL=redis://redis:6379 expose: - 9000 ports: - "9000:9000" depends_on: - mongo - redis restart: unless-stopped mongo: image: mongo environment: - MONGO_INITDB_ROOT_USERNAME=mogus - MONGO_INITDB_ROOT_PASSWORD=${DB_PASS} expose: - 27017 volumes: - ./db:/data/db:rw restart: unless-stopped redis: image: eqalpha/keydb restart: always