services: bot: build: ./bot restart: unless-stopped environment: - DISCORD_BOT_TOKEN=${DISCORD_BOT_TOKEN} - DISCORD_GUILD_ID=${DISCORD_GUILD_ID} - DISCORD_CHANNEL_ID=${DISCORD_CHANNEL_ID} - MUSIC_DIRECTORY=/music - LOG_LEVEL=${LOG_LEVEL:-info} volumes: - ./music:/music:ro depends_on: - api networks: - musicbot api: build: ./api restart: unless-stopped ports: - "${API_PORT:-3001}:3001" environment: - MUSIC_DIRECTORY=/music - BOT_INTERNAL_URL=http://bot:8080 - API_PORT=3001 - MAX_UPLOAD_SIZE_MB=${MAX_UPLOAD_SIZE_MB:-50} - MAX_BATCH_SIZE=${MAX_BATCH_SIZE:-20} - DUPLICATE_HANDLING=${DUPLICATE_HANDLING:-rename} - LOG_LEVEL=${LOG_LEVEL:-info} volumes: - ./music:/music - ./data:/data networks: - musicbot web: build: ./web restart: unless-stopped ports: - "${WEB_PORT:-3000}:80" depends_on: - api networks: - musicbot networks: musicbot: driver: bridge volumes: music: data: