Convert the qbittorrent sections to the steps component
This commit is contained in:
@@ -5,14 +5,6 @@ description: Install qBittorrent with Gluetun and ProtonVPN to download torrents
|
|||||||
|
|
||||||
|
|
||||||
:ellipsis{left=0px width=40rem top=10rem blur=140px zIndex=60}
|
:ellipsis{left=0px width=40rem top=10rem blur=140px zIndex=60}
|
||||||
# Qbittorrent
|
|
||||||
|
|
||||||
::note
|
|
||||||
🎯 __Goals:__
|
|
||||||
|
|
||||||
- Install and configure Qbittorrent
|
|
||||||
- Securely connect to the BitTorrent network using Gluetun and Proton VPN
|
|
||||||
::
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -48,12 +40,17 @@ tree:
|
|||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
|
::steps{level="3"}
|
||||||
|
### Create the media folders
|
||||||
|
|
||||||
If not already done, create the `downloads` folder under `/media`:
|
If not already done, create the `downloads` folder under `/media`:
|
||||||
|
|
||||||
```bash [Terminal]
|
```bash [Terminal]
|
||||||
mkdir -P /media/downloads
|
mkdir -P /media/downloads
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Deploy the stack
|
||||||
|
|
||||||
Open Dockge, click on `compose`, and name the stack `seedbox`. Paste the following config:
|
Open Dockge, click on `compose`, and name the stack `seedbox`. Paste the following config:
|
||||||
|
|
||||||
```yaml [compose.yaml]
|
```yaml [compose.yaml]
|
||||||
@@ -122,6 +119,8 @@ services:
|
|||||||
```
|
```
|
||||||
::
|
::
|
||||||
|
|
||||||
|
### Configure the download port update
|
||||||
|
|
||||||
Before editing the `.env` in Dockge, let's configure the download port update. Proton and most VPNs rotate the forwarding port, which must be communicated to Qbittorrent.
|
Before editing the `.env` in Dockge, let's configure the download port update. Proton and most VPNs rotate the forwarding port, which must be communicated to Qbittorrent.
|
||||||
|
|
||||||
We’ve added the mod `ghcr.io/t-anc/gsp-qbittorent-gluetun-sync-port-mod` to the container.
|
We’ve added the mod `ghcr.io/t-anc/gsp-qbittorent-gluetun-sync-port-mod` to the container.
|
||||||
@@ -158,6 +157,8 @@ apikey = "your_key_here" # key you just generated
|
|||||||
|
|
||||||
Press :kbd{value="Ctrl+O"}, then :kbd{value="Enter"} to save, and :kbd{value="Ctrl+X"} to exit.
|
Press :kbd{value="Ctrl+O"}, then :kbd{value="Enter"} to save, and :kbd{value="Ctrl+X"} to exit.
|
||||||
|
|
||||||
|
### Set your environment variables
|
||||||
|
|
||||||
In Dockge, fill in the variables in `.env`:
|
In Dockge, fill in the variables in `.env`:
|
||||||
|
|
||||||
```properties [.env]
|
```properties [.env]
|
||||||
@@ -182,14 +183,27 @@ Detailed info:
|
|||||||
| `ID` | Qbittorrent UI login username | `user` |
|
| `ID` | Qbittorrent UI login username | `user` |
|
||||||
| `PW` | Qbittorrent UI password | `password` |
|
| `PW` | Qbittorrent UI password | `password` |
|
||||||
|
|
||||||
|
### Done !
|
||||||
|
::
|
||||||
|
|
||||||
## Deployment
|
## Deployment
|
||||||
|
|
||||||
|
::steps{level="3"}
|
||||||
|
### Deploy the container
|
||||||
|
|
||||||
Once done, deploy the container.
|
Once done, deploy the container.
|
||||||
|
|
||||||
::warning
|
::note
|
||||||
|
|
||||||
**Startup logs will show a temporary password for `admin` user**
|
**Startup logs will show a temporary password for `admin` user.**
|
||||||
|
See logs in [Dockge](/serveex/core/docker/#dockge) to retrieve it, or type this command in a terminal:
|
||||||
|
```bash [Terminal]
|
||||||
|
docker logs qbittorrent 2>&1 | grep -i "temporary password"
|
||||||
|
```
|
||||||
::
|
::
|
||||||
|
|
||||||
|
### Log in and secure your account
|
||||||
|
|
||||||
Login at `http://server-ip:5695` (or the port you set).
|
Login at `http://server-ip:5695` (or the port you set).
|
||||||
|
|
||||||
::caution
|
::caution
|
||||||
@@ -199,6 +213,9 @@ __If login fails:__ check your firewall rules.
|
|||||||
|
|
||||||
Change your username and password in the "webui" settings.
|
Change your username and password in the "webui" settings.
|
||||||
|
|
||||||
|
### Done !
|
||||||
|
::
|
||||||
|
|
||||||
You're done! In Qbittorrent settings, under "Downloads", set `/media/downloads` as the default folder.
|
You're done! In Qbittorrent settings, under "Downloads", set `/media/downloads` as the default folder.
|
||||||
|
|
||||||
When adding a download, remember to select the proper directory so Jellyfin can sync correctly (`/media/movies` or `/media/tvseries`). You can also automate this with categories and folders.
|
When adding a download, remember to select the proper directory so Jellyfin can sync correctly (`/media/movies` or `/media/tvseries`). You can also automate this with categories and folders.
|
||||||
@@ -217,6 +234,9 @@ To start downloads from outside your home, without a VPN, you can expose the Qbi
|
|||||||
We assume you have the subdomain `seedbox.mydomain.com` with a `CNAME` pointing to `mydomain.com` in [DNS zone](/general/networking/dns). And that port `443` on your router is forwarded to your server in [NAT rules](/general/networking/nat), unless you’re using Cloudflare Zero Trust.
|
We assume you have the subdomain `seedbox.mydomain.com` with a `CNAME` pointing to `mydomain.com` in [DNS zone](/general/networking/dns). And that port `443` on your router is forwarded to your server in [NAT rules](/general/networking/nat), unless you’re using Cloudflare Zero Trust.
|
||||||
::
|
::
|
||||||
|
|
||||||
|
::steps{level="3"}
|
||||||
|
### Add Gluetun's network to SWAG
|
||||||
|
|
||||||
In Dockge, edit the SWAG compose file and add Gluetun’s network:
|
In Dockge, edit the SWAG compose file and add Gluetun’s network:
|
||||||
|
|
||||||
```yaml [compose.yaml]
|
```yaml [compose.yaml]
|
||||||
@@ -243,6 +263,8 @@ Click "Deploy" and wait for SWAG to fully initialize.
|
|||||||
We assume the network name is `seedbox_default`. You can confirm by checking the SWAG dashboard at http://server-ip:81.
|
We assume the network name is `seedbox_default`. You can confirm by checking the SWAG dashboard at http://server-ip:81.
|
||||||
::
|
::
|
||||||
|
|
||||||
|
### Create the subdomain.conf file
|
||||||
|
|
||||||
Now create/edit `seedbox.subdomain.conf`.
|
Now create/edit `seedbox.subdomain.conf`.
|
||||||
|
|
||||||
::tip{icon=""}
|
::tip{icon=""}
|
||||||
@@ -306,6 +328,13 @@ server {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Press :kbd{value="Ctrl+O"}, then :kbd{value="Enter"} to save, and :kbd{value="Ctrl+X"} to exit.
|
||||||
|
|
||||||
|
### Done !
|
||||||
|
::
|
||||||
|
|
||||||
|
Wait a few minutes, then go to `https://seedbox.mydomain.com`. You should land on the Qbittorrent interface.
|
||||||
|
|
||||||
## Protecting Qbittorrent with TinyAuth
|
## Protecting Qbittorrent with TinyAuth
|
||||||
Add [TinyAuth](/serveex/security/tinyauth)'s forward-auth check directly to `seedbox.subdomain.conf`, the same way as [the TinyAuth guide](/serveex/security/tinyauth#protecting-an-app-via-reverse-proxy):
|
Add [TinyAuth](/serveex/security/tinyauth)'s forward-auth check directly to `seedbox.subdomain.conf`, the same way as [the TinyAuth guide](/serveex/security/tinyauth#protecting-an-app-via-reverse-proxy):
|
||||||
|
|
||||||
@@ -382,14 +411,10 @@ server {
|
|||||||
The `location /tinyauth` block runs inside SWAG's own container, so SWAG needs to be on TinyAuth's Docker network to reach it by name (`tinyauth` here). This should already be set up from [exposing TinyAuth itself](/serveex/security/tinyauth#exposing-tinyauth-with-swag). If you run into an error, double-check SWAG's compose file still has that network attached.
|
The `location /tinyauth` block runs inside SWAG's own container, so SWAG needs to be on TinyAuth's Docker network to reach it by name (`tinyauth` here). This should already be set up from [exposing TinyAuth itself](/serveex/security/tinyauth#exposing-tinyauth-with-swag). If you run into an error, double-check SWAG's compose file still has that network attached.
|
||||||
::
|
::
|
||||||
|
|
||||||
::tip
|
::tip{icon=""}
|
||||||
✨ You can secure this app with Authentik instead of TinyAuth by uncommenting the `authentik-server.conf` and `authentik-location.conf` lines. Don’t forget to [create an app and provider in Authentik](/serveex/advanced/authentik#protecting-an-app-via-reverse-proxy).
|
✨ You can secure this app with [Authentik](/serveex/advanced/authentik) instead of TinyAuth by uncommenting the `authentik-server.conf` and `authentik-location.conf` lines. Don’t forget to [create an app and provider in Authentik](/serveex/advanced/authentik#protecting-an-app-via-reverse-proxy).
|
||||||
::
|
::
|
||||||
|
|
||||||
Press :kbd{value="Ctrl+O"}, then :kbd{value="Enter"} to save, and :kbd{value="Ctrl+X"} to exit.
|
|
||||||
|
|
||||||
Wait a few minutes, then go to `https://seedbox.mydomain.com`. You should land on the Qbittorrent interface.
|
|
||||||
|
|
||||||
And that’s it! You now have a ready-to-use media center.
|
And that’s it! You now have a ready-to-use media center.
|
||||||
|
|
||||||

|

|
||||||
|
|||||||
Reference in New Issue
Block a user