services: spotify-tokener: build: context: ./lavalink dockerfile: Dockerfile.tokener container_name: spotify-tokener restart: unless-stopped environment: - SPOTIFY_TOKENER_CHROME_PATH=/usr/bin/chromium lavalink: image: ghcr.io/lavalink-devs/lavalink:4-alpine container_name: loki-lavalink restart: unless-stopped depends_on: - spotify-tokener ports: - "127.0.0.1:2333:2333" volumes: - ./lavalink/application.yml:/opt/Lavalink/application.yml:ro - ./lavalink/plugins/:/opt/Lavalink/plugins/ - lavalink-data:/opt/Lavalink/data environment: JAVA_OPTS: "-Xmx1G -Xms256M" SPOTIFY_CLIENT_ID: ${SPOTIFY_CLIENT_ID} SPOTIFY_CLIENT_SECRET: ${SPOTIFY_CLIENT_SECRET} healthcheck: test: ["CMD-SHELL", "wget -q -O /dev/null --header=Authorization:Hch4HiVCxkKs9JPiSnrt4Q http://localhost:2333/v4/info || exit 1"] interval: 30s timeout: 5s retries: 3 start_period: 20s lavasrc-patcher: build: context: ./lavalink dockerfile: Dockerfile.config-patcher container_name: lavasrc-patcher depends_on: lavalink: condition: service_healthy restart: "no" bot: build: . container_name: loki-bot restart: unless-stopped depends_on: lavalink: condition: service_healthy mem_limit: 1g ports: - "8712:8712" environment: DISCORD_BOT_TOKEN: ${DISCORD_BOT_TOKEN} DISCORD_BOT_TOKEN_MUSIC: ${DISCORD_BOT_TOKEN_MUSIC} DISCORD_BOT_TOKEN_RADIO: ${DISCORD_BOT_TOKEN_RADIO} BOT_PREFIX: ${BOT_PREFIX:-!} BOT_ACTIVITY: ${BOT_ACTIVITY:-Используй !help} HEALTH_HTTP_PORT: ${HEALTH_HTTP_PORT:-8712} SUPER_ADMIN_ID: ${SUPER_ADMIN_ID} DB_PATH: /app/data/bot.db LAVALINK_HOST: lavalink LAVALINK_PORT: "2333" LAVALINK_PASSWORD: Hch4HiVCxkKs9JPiSnrt4Q R34_API_KEY: ${R34_API_KEY} R34_USER_ID: ${R34_USER_ID} DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY} AI_CHANNEL_ID: ${AI_CHANNEL_ID} AI_CONTEXT_MSGS: ${AI_CONTEXT_MSGS:-10} AI_MSG_LENGTH: ${AI_MSG_LENGTH:-300} AI_CONTEXT_CHARS: ${AI_CONTEXT_CHARS:-3000} AI_DOSSIER_MSGS: ${AI_DOSSIER_MSGS:-30} AI_DEBATE_CHANNEL_ID: ${AI_DEBATE_CHANNEL_ID} volumes: - bot-data:/app/data - ./data/prompts:/app/prompts:ro - ./data/knowledge:/app/knowledge:ro volumes: bot-data: lavalink-data: