- Do not abuse service from Doprax or your account could get banned. Deploy at your own risk.
- High disk usage will likely get your account banned.
- Aria2 & qBittorrent download speed is limited to 5MB/s on default.
- Container filesystem is ephemeral - that means that any changes to the filesystem except volume mounted on /mnt/data/config whilst the dyno is running only last until that container is shut down or restarted.
- It is not possible to configure a Rclone remote which requires web authentication through Rclone Web UI in this app. You need to prepare rclone.conf file on other devices.
- No Rclone mount support.
This project integrates yt-dlp, gallery-dl, Aria2 + WebUI, qBittorrent + VueTorrent WebUI, pyLoad Download Manager, Rclone + WebUI with auto-upload function, Rclone Serve HTTP & Webdav, customizable portal page, OliveTin WebUI for shell commands, Filebrowser, ttyd web terminal, Telegram notification.
- Rclone auto-upload function only needs to prepare rclone.conf file, and all other configurations are set to go.
- Rclone runs on daemon mode, easy to manually transfer files and monitor transfers in real time on WebUI.
- You can connect Aria2, qBittorrent and Rclone from frontends/services running on other hosts, including flexget/Radarr/Sonarr.
- Execute predefined yt-dlp, gallery-dl & Rclone commands from OliveTin WebUI.
- ttyd web terminal, which can execute yt-dlp and other commands on the command line.
- runit-based process management, each service can be started and stopped independently.
- There are independent logs for each service in the log directory.
- NodeStatus server monitor client.
Do not deploy directly from this repository
-
Fork this this repository (uncheck "Copy the main branch only"), then click Setting on fork repository page and check Template repository.
-
Go back to "Code" tab. Then Click new button: Use this template,create a new repository.
-
Go to Setting tab on your new repo,Click "Branches",set default branch to "doprax".
-
Go to Doprax Dashboard page, click "Account", then connect your github account.
-
Click "Dashboard", creat a new app and click it.
-
Click your newly created app, click "Import from my Github account" button, then import your new github repository.
-
Click "Add environment variable", add environment variables according to the following table.
-
Click "Volume", create a new volume and mount it to /mnt/data/config.
-
Click "Deploy", then click "Resources". Set RAM to 512MB, click "Submit". Click the Start button and wait for the deployment to complete.
Variable | Default | Description |
---|---|---|
GLOBAL_USER |
admin | Username for all web services except qbit |
GLOBAL_PASSWORD |
password | Password for all web services except qbit, double as Aria2 RPC token. Recommend strong password. |
GLOBAL_LANGUAGE |
en | Set language of portal page, qbit & filebrowser.(en or chs) |
GLOBAL_PORTAL_PATH |
/mypath | Portal page & base URL for all web services. Set this to an uncommon path. Do not set to blank or '/' |
NodeStatus_DSN |
Optional. NodeStatus server connection info, default blank value will disable NodeStatus. Example: wss://username:[email protected] |
-
Visit your "App URL" + ${GLOBAL_PORTAL_PATH} to reach portal page.
If your doprax domain gives you 503 or timeout error, here's a workaround by using cloudflared tunnel.
-
Click AriaNg, then authentication failure warning will pop up, fill in Aria2 secret RPC token with password set during deployment.
-
Click qBittorrent or VueTorrent, then login in with default user admin and default password adminadmin. Change default user/password to your own. Recommend strong password.
If you can't log in qBittorrent with the default account/password. Delete config/qBittorrent/config/qBittorrent.conf file via Filebrowser, then run the following command via ttyd:
sv restart 1
- Upload rclone.conf file to config folder via Filebrowser, you can edit script.conf file to change Rclone auto-upload settings.
- yt-dlp, gallery-dl & other commands can be executed through ttyd web terminal.
Built-in alias:
dlpr:Use yt-dlp to download videos to videos folder, then send task to Rclone after downloads completed.
gdlr: Use gallery-dl to download files to gallery_dl_downloads folder, then send task to Rclone after downloads completed. - If you can't find function settings added in new version in script.conf after upgrading, refer to the latest script.conf file,and add missing setting options by yourself.
-
To enable Telegram notification function, you need to talk to @BotFather in Telegram to register a bot. Get ChatID of your Telegram account or ChatID of the channel which bot joined. Please Google for detailed steps.
Edit the config/script.conf file. Fill in the corresponding options for botid:token and ChatID, then the notification function will take effect.
-
Known pyLoad bugs:
- Fail to delete archives after extraction, solution: Settings--Plugins--ExtractArchive, set "Move to trash instead delete" to off.
-
After adding following content to rclone.conf file, you can use local container storage as a Rclone remote for manually uploading via Rclone Web UI.
[local] type = alias remote = /mnt/data
-
For apps which don't support custom path for qBittorrent, uncomment followings line in Caddyfile under config/caddy folder before deployment:
handle /api* { reverse_proxy * localhost:61804 }
-
Aria2 JSON-RPC path: ${GLOBAL_PORTAL_PATH}/jsonrpc
Aria2 XML-RPC path: ${GLOBAL_PORTAL_PATH}/rpc