Compatible with Radarr & Sonarr. Includes a REST API.
Running the discord bot requires a discord developer account, and a bot created/invited (via your developer account) to your chosen discord server.
As this application is intended to interface with Sonarr and Radarr, you will need one or both installed. If you are installing to a machine that is not also hosting your Radarr/Sonarr, you must be able to access Radarr/Sonarr from the host (locally or remotely).
wget https://raw.githubusercontent.com/nickheyer/DiscoFlix/main/auto_install_update.sh
sudo ./auto_install_update.sh
To get the latest version of Discoflix, run:
docker image pull nickheyer/discoflix:latest
To run Discoflix in a container, use the following command. Make sure to mount a volume to /app/data
in the container so that your data persists across container restarts. Here's how to do it:
Example:
docker run -d -p 5454:5454 --name discoflix -v /opt/discoflix/data:/app/data nickheyer/discoflix
On Other Platforms:
You can replace /opt/discoflix/data
with an appropriate path on your local system. For Windows and macOS, specify the full path you want to use for data storage.
This allows DiscoFlix's database to remain on your pc even if you delete or update your container!
First, get the compose file:
mkdir -p /opt/discoflix/data && cd /opt/discoflix
wget https://raw.githubusercontent.com/nickheyer/DiscoFlix/main/docker-compose.yml
With Docker Compose installed on your system, you can start Discoflix by running:
docker-compose -f /opt/discoflix/docker-compose.yml up -d
This will pull the latest Discoflix image and run it, mounting the volume specified in the docker-compose.yml
file. This will use the default /opt/discoflix/data, so modify this path if needed.
To stop the service, use:
docker-compose -f /opt/discoflix/docker-compose.yml down
NOTE: Installation from source using Windows has been deprecated with the introduction of web-socket functionality, gevent, and other integral parts of this application that are not currently supported by Microsoft.
Change directory to preferred install location
cd /where/you/want/this/installed
Clone DiscoFlix
git clone https://github.com/nickheyer/DiscoFlix
Change directory to DiscoFlix
cd ./DiscoFlix
Install Requirements
pip install -r requirements.txt
Run Migrations
python manage.py migrate
Run DiscoFlix
sh ./run.sh
ipconfig
on the host machine and look for your ipv4
.If you are hosting DiscoFlix (using Docker) on the same machine that you are hosting Radarr & Sonarr, you might not be able to access your Radarr & Sonarr using
http://localhost:<port>
, as that would be referencing the localhost of the docker container itself. Instead, usehttp://host.docker.internal:<port>
- consider this thelocalhost
of the machine hosting the docker container. In some cases, this may not be an issue.
Privileged Gateway Intents
)Type the following into a discord chat message that the bot can see:
!df test
Test that the bot is able to access Radarr/Sonarr by making your first test request. Let's use "Dark Phoenix" as an example.
!df movie Dark Phoenix
We can also test our Sonarr requests. Let's try "Cyberpunk Edgerunners".
!df show Cyberpunk Edgerunners
Looks like we already have that on our server, or it's already being monitored!
To see the commands available to you, type !df help
. DiscoFlix should respond with a table containing some or all of the below commands.
Command | Aliases | Description | Usage |
---|---|---|---|
Test | test | Confirm bot is on and listening | !df test |
Help | help | Display all authorized commands. | !df help |
Echo | echo | Confirm bot is handling input as intended. | !df echo <text to echo> |
Error | error, err, raise | Confirm bot is handling errors as intended | !df error [-s] |
Log | log, add-log | Confirm bot is logging information to console as intended | !df log <text to log> |
Movie | movie, add-movie | Request a movie | !df movie <title> |
Show | show, add-show, tv-show, add-tv-show, tv, tvshow | Request a tv-show | !df show <title> |
User | user, add-user, add | Add a user | !df user <user_to_add> |
The above commands assume that your command prefix is set to the default
!df
. Adjust accordingly.Keep in mind that you will need to mark yourself as "server owner" in the user control panel to use the debug commands.
Or just view the docs.
Contributions are always welcome!
Email nick@heyer.app
for ways to get started.