Search, download and watch torrents from a single place. Support for Wireguard with a built-in killswitch.
- Jellyfin media player & user management
- React frontend for search/downloads with support for direct download
- Go torrent client
- 1337x & ThePirateBay scrapers (more planned)
- Docker Wireguard with automatic Mullvad configuration
- Caddy reverse proxy & automatic SSL
- docker + docker-compose
- Wireguard config file (optional)
This was made to run on a remote machine with a domain setup for SSL, but can work fine locally too.
git clone https://github.com/leona/freeflix.git
Copy the example.env file into .env and change the JWT_SECRET and PUBLIC_URL.
Put your Wireguard config into config/client/*.conf
or disable Wireguard.
The client container has the following environment variables you can pass
OUTPUT_PATH=/data
API_PORT=80
MAX_DOWNLOAD_AGE=7 # Days before files are deleted
MULLVAD_ACCOUNT=
MULLVAD_COUNTRIES=nl,germany
If you pass your Mullvad account ID it will automatically download your config files.
Config files will be randomly selected each time the client container starts.
docker-compose --profile build up && docker-compose --profile serve up -d
Go to localhost:8096
and setup a user and media library. Use /media as the folder and disable meta info checking as it breaks stuff.
Also create an API key from Administration > Dashboard > Advanced > API Keys and drop that into the .env
file.
You can get clients for your phone, TV etc. to connect directly to this container.
If you visit localhost
you should be able to access the frontend. The same user/pass combo as Jellyfin is used here, so you can add users through there.
docker-compose -f docker-compose.dev.yml up
- Scan libraries when torrents complete