Convert the remaining Serveex and recycled articles to steps

This commit is contained in:
Djeex
2026-09-04 15:57:38 +02:00
parent cd75fd2288
commit a7b3880088
29 changed files with 249 additions and 106 deletions
+18 -9
View File
@@ -5,15 +5,6 @@ description: Install Plex Media Server with Tautulli on your homelab to stream m
:ellipsis{left=0px width=40rem top=10rem blur=140px zIndex=60}
# Plex
::note
🎯 **Objectives:**
- Install Plex
- Install Tautulli
- Access media from outside your network
::
[Plex](https://www.plex.tv/fr/) is a self-hosted video streaming platform for managing your movie or TV show library and playing them locally or remotely. Plex has apps for TV, Android, iOS, Windows, and macOS, allowing you to stream your library just like Netflix.
@@ -52,12 +43,17 @@ tree:
---
::
::steps{level="3"}
### Create the media folders
Create the `movies`, `tvseries`, and `library` folders in `/media`:
```bash [Terminal]
mkdir -p /media/movies /media/library /media/tvseries
```
### Deploy the stack
Open Dockge in your browser and click `compose`.
Name the stack `plex` and add the following config:
@@ -115,6 +111,8 @@ services:
```
::
### Set your environment variables
Find your PUID and GUID by running:
```bash [Terminal]
@@ -138,6 +136,9 @@ Tautulli is accessible at `http://yourserverip:8181`.
You must be on your local network during Plex's initial setup. Otherwise, the URL will redirect to your Plex account without detecting your server. A VPN won't help. If you have no choice, [you can handle the setup remotely via SSH tunnel](https://support.plex.tv/articles/200288586-installation/#toc-2).
::
### Done !
::
## Configure Plex
Plex offers a range of free movies/shows. After creating your account, I recommend disabling everything in the _Online Services_ section to keep your library clean.
@@ -176,6 +177,9 @@ However, you may want to expose Tautulli so you can view stats from a simple URL
We assume you have the subdomain `tautulli.mydomain.com` with a `CNAME` pointing to `mydomain.com` in your [DNS zone](/general/networking/dns). And of course, [unless you use Cloudflare Zero Trust](/serveex/security/cloudflare), your box's port `443` must be forwarded to your server's port `443` in [NAT rules](/general/networking/nat).
::
::steps{level="3"}
### Add Tautulli's network to SWAG
Go to Dockge and edit SWAGs compose file by adding Tautullis network:
```yaml [compose.yaml]
@@ -202,6 +206,8 @@ Redeploy the stack and wait for SWAG to be fully operational.
Here we assume the Tautulli network name is `tautulli_default`. You can check the connection by visiting SWAGs dashboard at `http://yourserverip:81`.
::
### Create the subdomain.conf file
Copy and rename the file `tautulli.subdomain.conf.sample` to `tautulli.subdomain.conf`, then edit it:
::tip{icon=""}
@@ -300,6 +306,9 @@ 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 open `http://tautulli.mydomain.com` in your browser.
::caution
@@ -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}
# Qbittorrent
::note
🎯 __Goals:__
- Install and configure Qbittorrent
- Securely connect to the BitTorrent network using Gluetun and Proton VPN
::
![Picture](/img/serveex/qbit-vue.jpeg)
@@ -48,12 +40,17 @@ tree:
---
::
::steps{level="3"}
### Create the downloads folder
If not already done, create the `downloads` folder under `/media`:
```bash [Terminal]
mkdir -P /media/downloads
```
### Deploy the stack
Open Dockge, click on `compose`, and name the stack `seedbox`. Paste the following config:
```yaml [compose.yaml]
@@ -122,6 +119,8 @@ services:
```
::
### Configure the port-forwarding sync
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.
Weve 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.
### Set your environment variables
In Dockge, fill in the variables in `.env`:
```properties [.env]
@@ -182,7 +183,14 @@ Detailed info:
| `ID` | Qbittorrent UI login username | `user` |
| `PW` | Qbittorrent UI password | `password` |
### Done !
::
## Deployment
::steps{level="3"}
### Deploy the container
Once done, deploy the container.
::warning
@@ -190,6 +198,8 @@ Once done, deploy the container.
**Startup logs will show a temporary password for `admin` user**
::
### Log in and secure your account
Login at `http://server-ip:5695` (or the port you set).
::caution
@@ -199,6 +209,9 @@ __If login fails:__ check your firewall rules.
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.
When adding a download, remember to select the proper directory so Plex can sync correctly (`/media/movies` or `/media/tvseries`). You can also automate this with categories and folders.
@@ -217,6 +230,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 youre using Cloudflare Zero Trust.
::
::steps{level="3"}
### Add the seedbox network to SWAG
In Dockge, edit the SWAG compose file and add Gluetuns network:
```yaml [compose.yaml]
@@ -243,6 +259,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.
::
### Create the subdomain.conf file
Now create/edit `seedbox.subdomain.conf`.
::tip{icon=""}
@@ -312,6 +330,9 @@ 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.
And thats it! You now have a ready-to-use media center.
@@ -5,13 +5,6 @@ description: Automate media downloads with the Servarr stack, Radarr, Sonarr, Ba
:ellipsis{left=0px width=40rem top=10rem blur=140px zIndex=60}
# Servarr
::note
🎯 __Goals:__
Automate movie and TV show downloads using Radarr, Sonarr, Bazarr, Prowlarr, and Overseerr.
::
[Servarr](https://wiki.servarr.com/) is a suite of applications developed to automate the downloading, updating, and management of media. Here, we'll focus on movies and TV shows with the goal of:
@@ -26,8 +19,6 @@ Well start by deploying the stack and then proceed to configure each app and
## Install the Apps
### Docker Compose
::file-tree
---
tree:
@@ -64,6 +55,9 @@ If not, the _arr_ apps may not recognize the path provided by Qbittorrent and wi
Without hardlinks, the _arr_ apps will copy the files instead, **doubling the space used** on your storage.
::
::steps{level="3"}
### Deploy the stack
Open Docker and your `plex` stack. Modify the compose file as follows:
```yaml [compose.yaml]
---
@@ -191,6 +185,8 @@ services:
```
::
### Set your environment variables
Set your `.env` file with the variables below:
```properties [.env]
@@ -207,6 +203,9 @@ MEDIA_PATH=
Deploy the stack.
### Done !
::
### Configure Radarr
Radarr queries your torrent sources and lets you define the type of releases to prioritize. It can also upgrade your movies if a better version is available.
@@ -220,7 +219,8 @@ __If it fails:__ check your firewall rules.
Create an account and choose *forms login*.
##### Add a *root folder*
::steps{level="4"}
#### Add a *root folder*
- Go to *Settings > Media Management*.
- Add a root folder and select `/media/movies`.
@@ -230,13 +230,13 @@ Create an account and choose *forms login*.
__Warning:__ If you already have movies in `movies` from Qbittorrent, do not let Radarr add them. Radarr might modify them, which could stop seeding in Qbittorrent.
::
##### Configure Profiles
#### Configure Profiles
Go to *Settings > Profiles*. These are your default quality profiles. When you make a request, you're selecting one of these. For example, configure the “any” profile by unchecking everything except what is shown in the image and ordering them accordingly. This makes Radarr search for 4K REMUX first, then go down the list if unavailable.
![profiles_radarr](/img/serveex/radarr1.png)
##### Add Qbittorrent
#### Add Qbittorrent
In *Settings > Download Clients*, add Qbittorrent.
@@ -245,7 +245,7 @@ In *Settings > Download Clients*, add Qbittorrent.
- Click *Test*.
- If successful, click *Save*.
##### Connect to Plex
#### Connect to Plex
Go to *Settings > Connect*, add a new connection and choose *Plex Media Server*.
@@ -254,10 +254,13 @@ Go to *Settings > Connect*, add a new connection and choose *Plex Media Server*.
- Click the blue "authenticate with Plex.tv" button and log into Plex.
- Press *Test*, then *Save* if successful.
##### Get API Key for Prowlarr and Overseerr
#### Get API Key for Prowlarr and Overseerr
- Go to *Settings > General* and copy your *API Key* for later use.
#### Done !
::
### Configure Sonarr
Sonarr queries torrent sources and defines what kind of TV series releases to prioritize. It also upgrades series when better versions are available.
@@ -281,11 +284,12 @@ Go to `http://yourserverip:9696` and create an account, using *forms login*.
__If it fails:__ check your firewall rules.
::
##### Add an Indexer
::steps{level="4"}
#### Add an Indexer
- Go to the *Indexers* section and add your torrent indexer.
##### Add Radarr and Sonarr
#### Add Radarr and Sonarr
In *Settings > Apps*, add Radarr and Sonarr with the following details:
@@ -294,6 +298,9 @@ In *Settings > Apps*, add Radarr and Sonarr with the following details:
- API Key: use the one copied from Radarr and Sonarr.
- Click *Test*, then *Save* if all goes well.
#### Done !
::
### Configuring Bazarr
Bazarr is an app that automatically searches for the correct subtitles in your preferred languages for all the movies and TV shows added by Radarr and Sonarr.
@@ -306,6 +313,7 @@ __If it fails:__ check your firewall rules.
Go to *Settings > General* and create a username and password using *forms login*.
::steps{level="4"}
#### Add a Language Profile
- In *Settings > Languages*, click the pink *Add new profile* button and name it.
@@ -335,6 +343,9 @@ Go to *Settings > General* and create a username and password using *forms login
Repeat the same steps for Radarr.
#### Done !
::
### Configuring Overseerr
[Overseerr](https://overseerr.dev/) is an app that lets you browse a movie catalog and send requests to Sonarr and Radarr. Just browse movies or series, click *Request*, and the media will automatically be downloaded according to your Radarr or Sonarr settings. If the title hasnt been released yet, it will be downloaded automatically when available. This way, episodes of a series appear in Plex without any manual intervention.
@@ -348,7 +359,8 @@ Go to `http://yourserverip:5055` and log in with your Plex account.
__If it fails:__ check your firewall rules.
::
#### Add Radarr and Sonarr
::steps{level="4"}
#### Add Radarr
When prompted, add a Radarr server:
@@ -367,6 +379,8 @@ If the test succeeds, continue filling in the fields:
- Check all 3 boxes at the bottom.
- Save and continue.
#### Add Sonarr
Now do the same for Sonarr:
- Check *Default server*.
@@ -384,6 +398,9 @@ If the test succeeds, continue filling in the fields:
- Check all 4 boxes at the bottom.
- Save and continue.
#### Done !
::
And thats it! Just request a movie or series, then check in qBittorrent or Radarr/Sonarr. Within a few minutes, your media will be available on Plex!
## Exposing Overseerr with SWAG
@@ -395,6 +412,9 @@ It can be useful to expose Overseerr if you want to send requests from outside y
We assume you have the subdomain `films.mydomain.com` with a `CNAME` pointing to `films.fr` in your [DNS zone](/general/networking/dns). And that [unless youre using Cloudflare Zero Trust](/serveex/security/cloudflare), port `443` on your router is forwarded to port `443` on your server via [NAT rules](/general/networking/nat).
::
::steps{level="3"}
### Add Overseerr's network to SWAG
Go to Dockge, edit the SWAG compose file, and add the Overseerr network, which is the same as Plex (since its in the Plex stack):
```yaml [compose.yaml]
@@ -421,6 +441,8 @@ Restart the stack by clicking “Deploy” and wait until SWAG is fully operatio
Here we assume the Tautulli network is named `plex_default`. You can verify the connection works by visiting the SWAG dashboard at `http://yourserverip:81`.
::
### Create the subdomain.conf file
Create and edit the file `films.subdomain.conf`:
::tip{icon=""}
@@ -494,6 +516,9 @@ 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 visit `http://films.mydomain.com` in your browser.
::caution
@@ -5,14 +5,6 @@ description: Install Gitea, a lightweight self-hosted Git service to manage your
:ellipsis{left=0px width=40rem top=10rem blur=140px zIndex=60}
# Gitea
::note
🎯 __Goals:__
- Install Gitea
- Expose Gitea using Swag
::
[Gitea](https://about.gitea.com/) is a self-hosted DevOps platform that allows you to manage repositories much like GitHub, but on your own infrastructure.
@@ -30,6 +22,9 @@ tree:
---
::
::steps{level="3"}
### Deploy the stack
Open Dockge, click on `compose`, name the stack `gitea`, and paste the following content:
```yaml [compose.yaml]
@@ -55,6 +50,8 @@ services:
- 222:22
```
### Set your environment variables
Fill out the `.env` file with the required information, for example:
```properties [.env]
@@ -64,6 +61,9 @@ GID=1000
Deploy the container and go to `http://yourserverip:3333`. Your Gitea instance is now up and running!
### Done !
::
::caution
__If it fails:__ check your firewall rules.
@@ -77,6 +77,9 @@ The benefit of this setup is being able to access it remotely from any of your d
__Prerequisite:__ We assume you have created a subdomain such as `gitea.yourdomain.com` in your [DNS zone](/general/networking/dns) with `CNAME` pointing to `yourdomain.com`, and [unless you're using Cloudflare Zero Trust](/serveex/security/cloudflare), you have already forwarded port `443` from your router to your servers port `443` in the [NAT rules](/general/networking/nat).
::
::steps{level="3"}
### Add Gitea's network to SWAG
In Dockge, go to the SWAG stack and edit the compose file by adding Gitea's network:
```yaml [compose.yaml]
@@ -103,6 +106,8 @@ We assume the Gitea network name is `gitea_default`. You can verify connectivity
Redeploy the stack by clicking "Deploy" and wait until SWAG is fully operational.
### Create the subdomain.conf file
Inside the Swag folders, create the file `gitea.subdomain.conf`.
::tip{icon=""}
@@ -173,6 +178,8 @@ server {
Press :kbd{value="Ctrl+O"}, then :kbd{value="Enter"} to save, and :kbd{value="Ctrl+X"} to exit.
### Configure Gitea's domain
Now open the `app.ini` file from the container's file system:
```bash [Terminal]
@@ -190,6 +197,9 @@ ROOT_URL = https://gitea.yourdomain.com/
Press :kbd{value="Ctrl+O"}, then :kbd{value="Enter"} to save, and :kbd{value="Ctrl+X"} to exit, then restart the container.
### Done !
::
And thats it! Gitea is now exposed to the web.
::tip{icon=""}