Self-hosting

The main motivation for forking the project was to allow any Discord Guild owner to be able to host their own instance of this bot. In order to be able to do that, a bit of configuration is necessary, however, here's nothing special about this bot, it can be self-hosted without any issues in one of the following ways.

Contents

Pre-Requisites

If any of the URLs that the bot spits out are localhost, only the person running the bot will be able to access the recordings.

Minio

After you start Minio, please create the bucket set as the DS_BUCKET environment variable. The Access and Secret keys can either be made up, if running locally, or need to be specific values if using Minio as a gateway to a different store. Please consult the Minio documentation for more details.

Local

These instructions are for those who want to run the bot either on their computer or on a server, for this you'll need to have install Java 11+.

Done!

Note: If you're deploying on your own VPS, then you'll need a bit more setup as you may be using NGINX or Apache.

Docker Compose

If Docker is your jam, go into the docker folder and modify the variables in the .env, the rest are in the docker-compose.yml file itself. For reference see environment variables. Then use docker-compose:

docker-compose up # optionally, --detach

This will start both the bot on http://localhost:3000 and minio on http://localhost:9000, and that's really all there is. The recordings will be saved under DATA_DIR\recordings on your local machine, and can also be accessed through the Minio web interface.

These are the defaults I set for packaging convenience, but tweak as much or as little as you want.