Skip to content
logm1loPublic

About

Self-hosted Discord music bot using Discord.js, Lavalink, PostgreSQL, and Redis.

Topics

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DusicBox

DusicBox is a self-hosted Discord music bot for small private deployments. It uses TypeScript, Discord.js, Lavalink, PostgreSQL, and Redis. One capable host can support up to 25 Discord servers and 10 active players.

Features include YouTube search, private result menus, queues, playback controls, playlists, favorites, settings, playback history, English and Vietnamese translations, health checks, and Prometheus metrics.

Requirements

  • A 64-bit Linux host with at least 4 GB of memory
  • Docker Engine 29 or later with Docker Compose
  • A Discord application and bot token
  • A Discord server where you have Manage Server permission

YouTube is the only end-user music provider. Playback is experimental and may stop working without notice, especially from cloud provider addresses. DusicBox does not use cookies, account tokens, proof tokens, proxies, CAPTCHA services, or IP rotation. See provider behavior for details.

Quick start

Follow the full installation guide before using production credentials.

git clone https://github.com/logm1lo/dusicbox.git
cd dusicbox
cp .env.example .env
chmod 600 .env

Set the Discord values and independent secrets in .env, then run:

docker compose config --quiet
docker compose build --pull
docker compose up -d postgres redis
docker compose --profile migration run --rm migrate
docker compose up -d lavalink bot
docker compose run --rm --no-deps --entrypoint node bot \
  apps/bot/dist/deploy-commands.js guild
docker compose ps

In Discord, run /diagnose, /search, and /play. The setup passes only when you can hear the selected track.

Guides

Development

Use Node.js 24.19.0 and pnpm 11.22.0.

pnpm install --frozen-lockfile
pnpm format:check
pnpm lint
pnpm typecheck
pnpm test
pnpm build
pnpm test:integration
pnpm db:check

License

MIT. See LICENSE.

About

Self-hosted Discord music bot using Discord.js, Lavalink, PostgreSQL, and Redis.

Topics

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages