discord-music-bot/docker-compose.yml

43 lines
1.0 KiB
YAML

services:
lavalink:
image: fredboat/lavalink:latest
container_name: lavalink
restart: unless-stopped
networks:
- bot-network
ports:
- "2333:2333"
environment:
- LAVALINK_SERVER_PASSWORD=${LAVALINK_PASSWORD}
volumes:
- ./application.yml:/opt/Lavalink/application.yml:ro,Z
# Add healthcheck to verify Lavalink is ready
healthcheck:
test: >
curl -H "Authorization: ${LAVALINK_PASSWORD}" -f http://localhost:2333/versionkk
interval: 5s
timeout: 5s
retries: 3
start_period: 5s # Give Lavalink time to start up initially
bot:
build: .
container_name: discord-music-bot
restart: unless-stopped
networks:
- bot-network
env_file:
- .env
environment:
- LAVALINK_HOST=lavalink
- LAVALINK_PORT=2333
- LAVALINK_PASSWORD=${LAVALINK_PASSWORD}
# Update depends_on to wait for healthcheck
depends_on:
lavalink:
condition: service_healthy
networks:
bot-network:
driver: bridge