Hazmi35 / jukebox

Just a simple Discord music bot.
GNU Affero General Public License v3.0
72 stars 35 forks source link
discord discord-bot discord-music-bot discordbot discordbots discordjs hacktoberfest jukebox music-bot musicbot node nodejs typescript

Maintenance Notice

⚠️ Due to rapid changes on the library Jukebox used, and Discord API, this branch of Jukebox is discontinued.

New Jukebox would be created in new branch.

Jukebox

Just a simple Discord music bot

CI Status

Deploy

Usage

[⚠] Requires Node.JS version 16.6.0 or above.

  1. Install Node.JS

  2. Install requirements for yt-dlp

    For Linux/Mac OS/Unix-like system, install Python 3, and add them to the PATH environment variable

    For Windows, you don't need to install Python, but you need to install Microsoft Visual C++ 2010 Service Pack 1 Redistributable Package (x86)

  3. Rename .env.schema to .env and fill out the values (example on .env.example)

  4. Install dependencies as stated here

  5. Run npm run build

  6. (Optional) Prune dev dependencies (This is good to save disk spaces):

    $ npm prune --production
  7. Start it with npm start. And you're done!

Notes:

  1. You only need to configure .env file when you're using the Docker image
  2. If you're using "Deploy to Heroku" button, you don't need to do this.

Install

Without optional packages

$ npm install --no-optional

With optional packages (Recommended)

$ npm install

For optional packages, you need to install build tools as stated here and you also need to install Git

Docker

Want to use Dockerized version of jukebox? sure! we provide them on the Docker Hub and also in GitHub Container Registry

Volumes

Docker Volumes are needed to store cache and logs persistently

Example:

$ docker run --env-file .env --volume cache:/app/cache --volume logs:/app/logs --restart unless-stopped hazmi35/jukebox

We also provide docker-compose.yml and docker-compose.debian.yml if you want to go that way.

There is also a docker-compose.pull.yml version, which pulls the image from Docker Hub (latest tag, alpine)

Compose Example

$ docker-compose up