Merge pull request 'Update stack downloads-vpn' (#96) from evo-readme-stackdl into master
Reviewed-on: #96
This commit is contained in:
commit
56b28966be
@ -0,0 +1,15 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Create the necessary file structure for /dev/net/tun
|
||||
if ( [ ! -c /dev/net/tun ] ); then
|
||||
if ( [ ! -d /dev/net ] ); then
|
||||
mkdir -m 755 /dev/net
|
||||
fi
|
||||
mknod /dev/net/tun c 10 200
|
||||
chmod 0755 /dev/net/tun
|
||||
fi
|
||||
|
||||
# Load the tun module if not already loaded
|
||||
if ( !(lsmod | grep -q "^tun\s") ); then
|
||||
insmod /lib/modules/tun.ko
|
||||
fi
|
@ -1,37 +1,8 @@
|
||||
## Discord Plex FR : https://discord.gg/ERpYMqS
|
||||
## Version 2021-08-17
|
||||
##
|
||||
## NOTE : ATTENTION NE PAS BASCULER SUR L'IMAGE CRAZYMAX AVEC LES FICHIERS DE
|
||||
## VOTRE ANCIENNE CONFIG LINUXSERVER/RUTORRENT
|
||||
## Voir : https://blog.thelazyfox.xyz/docker-linuxserver-rutorrent-deprecated-what-i-have-done/
|
||||
## Pour une aide à l'installation, consulter le README
|
||||
##
|
||||
##
|
||||
## Dans le fichier .env, modifier les variables PUID/GUID avec vos ID
|
||||
## Plus d'info : https://www.forum-nas.fr/viewtopic.php?f=56&t=13213
|
||||
## Modifier également la variable "RACINE" qui doit indiquer le chemin racine
|
||||
## Dans ce dossier ( par defaut downloads-vpn ) il doit y avoir l'arborescence suivante :
|
||||
##
|
||||
## downloads-vpn ---- vpn ------------ config
|
||||
## | |_ scripts
|
||||
## |
|
||||
## |-- rutorrent ------ data
|
||||
## | |_ passwd
|
||||
## | |_ downloads
|
||||
## |
|
||||
## |-- prowlarr ------- config
|
||||
## |
|
||||
## |-- sonarr --------- config
|
||||
## | |_ downloads
|
||||
## |
|
||||
## |-- radarr --------- config
|
||||
## | |_ downloads
|
||||
## |
|
||||
## |-- jackett -------- config
|
||||
## |
|
||||
## |-- qbitorrent ----- config
|
||||
## | |_ downloads
|
||||
##
|
||||
|
||||
version: '3.2'
|
||||
|
||||
services:
|
||||
@ -63,7 +34,7 @@ services:
|
||||
- 9117:9117 # WebUI jackett
|
||||
- 7878:7878 # WebUI radarr
|
||||
- 8989:8989 # WebUI sonarr
|
||||
- 8191:8191 #flaresolver
|
||||
- 8191:8191 # Flaresolver
|
||||
- 8080:8080 # WebUI rutorrent crazymax
|
||||
- 9696:9696 # WebUI prowlarr
|
||||
devices:
|
||||
@ -79,7 +50,7 @@ services:
|
||||
|
||||
rtorrent-rutorrent:
|
||||
image: crazymax/rtorrent-rutorrent:latest
|
||||
container_name: rutorrent-crazymax
|
||||
container_name: rutorrent
|
||||
# labels:
|
||||
# - com.centurylinklabs.watchtower.enable=true
|
||||
# - autoheal=true
|
||||
@ -102,11 +73,6 @@ services:
|
||||
soft: 32000
|
||||
hard: 40000
|
||||
restart: unless-stopped
|
||||
# healthcheck:
|
||||
# test: ["CMD-SHELL", "curl --fail http://172.22.0.1:8080/ || exit 1"]
|
||||
# interval: 1m30s
|
||||
# timeout: 10s
|
||||
# retries: 3
|
||||
|
||||
prowlarr:
|
||||
image: ghcr.io/linuxserver/prowlarr:develop
|
||||
@ -121,16 +87,9 @@ services:
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=${TZ}
|
||||
# - DOCKER_MODS=ghcr.io/gilbn/theme.park:prowlarr
|
||||
# - TP_THEME=space-gray
|
||||
volumes:
|
||||
- ${RACINE}/prowlarr/config:/config
|
||||
restart: unless-stopped
|
||||
# healthcheck:
|
||||
# test: ["CMD-SHELL", "curl --fail http://172.22.0.1:9696/ || exit 1"]
|
||||
# interval: 1m30s
|
||||
# timeout: 10s
|
||||
# retries: 3
|
||||
|
||||
sonarr:
|
||||
image: ghcr.io/linuxserver/sonarr:latest
|
||||
@ -149,11 +108,6 @@ services:
|
||||
- ${RACINE}/sonarr/config:/config
|
||||
- ${RACINE}/rutorrent/downloads:/downloads
|
||||
restart: unless-stopped
|
||||
# healthcheck:
|
||||
# test: ["CMD-SHELL", "curl --fail http://172.22.0.1:8989/ || exit 1"]
|
||||
# interval: 1m30s
|
||||
# timeout: 10s
|
||||
# retries: 3
|
||||
|
||||
radarr:
|
||||
image: ghcr.io/linuxserver/radarr:nightly
|
||||
@ -171,12 +125,7 @@ services:
|
||||
volumes:
|
||||
- ${RACINE}/radarr/config:/config
|
||||
- ${RACINE}/rutorrent/downloads:/downloads
|
||||
restart: unless-stopped
|
||||
# healthcheck:
|
||||
# test: ["CMD-SHELL", "curl --fail http://172.22.0.1:7878/ || exit 1"]
|
||||
# interval: 1m30s
|
||||
# timeout: 10s
|
||||
# retries: 3
|
||||
restart: unless-stopped
|
||||
|
||||
jackett:
|
||||
image: ghcr.io/linuxserver/jackett
|
||||
@ -195,11 +144,6 @@ services:
|
||||
- ${RACINE}/jackett/config:/config
|
||||
- ${RACINE}/jackett/downloads:/downloads
|
||||
restart: unless-stopped
|
||||
# healthcheck:
|
||||
# test: ["CMD-SHELL", "curl --fail http://172.22.0.1:9117/ || exit 1"]
|
||||
# interval: 1m30s
|
||||
# timeout: 10s
|
||||
# retries: 3
|
||||
|
||||
flaresolverr:
|
||||
image: ghcr.io/flaresolverr/flaresolverr
|
||||
@ -231,11 +175,6 @@ services:
|
||||
- ${RACINE}/qbittorrent/config:/config
|
||||
- ${RACINE}/qbittorrent/downloads:/downloads
|
||||
restart: unless-stopped
|
||||
# healthcheck:
|
||||
# test: ["CMD-SHELL", "curl --fail http://172.22.0.1:8586/ || exit 1"]
|
||||
# interval: 1m30s
|
||||
# timeout: 10s
|
||||
# retries: 3
|
||||
|
||||
networks:
|
||||
vpn-network:
|
||||
|
@ -0,0 +1,411 @@
|
||||
Installation de la stack "Downloads-VPN"
|
||||
============
|
||||
|
||||
Cette stack docker-compose contient les logiciels :
|
||||
- OpenVPN Client
|
||||
- Jackett
|
||||
- Prowlarr
|
||||
- rutorrent
|
||||
- Qbittorrent
|
||||
- Sonarr
|
||||
- Radarr
|
||||
|
||||
Elle permet d'installer rapidement ces logiciels et de s'assurer que ces derniers ne communiquerons que à travers le Client VPN.
|
||||
|
||||
**Disclamer : Ce tutoriel n'est pas là pour vous apprendre à télécharger des fichiers illégaux, tous messages à ce sujet seront supprimés.**
|
||||
|
||||
## Table des matières
|
||||
- 1. [Prérequis](#1-prérequis)
|
||||
- 1.a [Création des dossiers](#1-a-création-des-dossiers)
|
||||
- 1.b [Modifications des .env](#1-b-modifications-des-env)
|
||||
- 1.c [Transfert des fichiers dans /downloads-vpn](#1-c-transfert-des-fichiers-dans-downloads-vpn)
|
||||
- 1.d [Mise en place de la config .opvn](#1-d-mise-en-place-de-la-config-opvn)
|
||||
- 1.e [Optionnel - Création et Execution de TUN.sh](#1-e-optionnel-création-et-execution-de-tun)
|
||||
- 2. [Création des conteneurs](#2-création-des-conteneurs)
|
||||
- 2.a [Création du réseau](#2-a-création-du-réseau)
|
||||
- 2.b [Création des conteneurs](#2-b-création-des-conteneurs)
|
||||
- 3. [Les Bases](#3-les-bases)
|
||||
- 3.a [Commandes de bases ( Docker )](#3-a-commandes-de-bases-docker)
|
||||
- 3.b [Accès aux interfaces ( WebUI )](#3-b-accès-aux-interfaces-webui)
|
||||
- 4. [Configuration de rutorrent](#4-configuration-de-rutorrent)
|
||||
- 4.a [Réactiver la fonction Effacer / Effacer et Supprimer les données](#4-a-réactiver-la-fonction-effacer-effacer-et-supprimer-les-données)
|
||||
- 4.b [Sécuriser l’accès à l'interface](#4-b-sécuriser-l-accès-à-l-interface)
|
||||
- 5. [Configuration de jackett](#5-configuration-de-jackett)
|
||||
- 5.a [Configurer Flaresolverr](#5-a-configurer-flaresolverr)
|
||||
- 6. [Aller plus loin](#6-aller-plus-loin)
|
||||
- 6.a [Rajouter les chemins vers ces médias](#6-a-rajouter-les-chemins-vers-ces-médias)
|
||||
- 6.b [Mise à jour automatique ( watchtower )](#6-b-mise-à-jour-automatique-watchtower)
|
||||
- 6.c [Reboot automatique en cas de soucis ( autoheal )](#6-c-reboot-automatique-en-cas-de-soucis-autoheal)
|
||||
- 7. Dépannage ( Ce construira au fur et a mesure des questions )
|
||||
|
||||
## 1. Prérequis
|
||||
|
||||
- Cette stack est concu pour fonctionner dans un dossier `downloads-vpn`, avec l'architecture suivante :
|
||||
```
|
||||
downloads-vpn ---- vpn ------------ config
|
||||
| |_ scripts
|
||||
|
|
||||
|-- rutorrent ------ data
|
||||
| |_ passwd
|
||||
| |_ downloads
|
||||
|
|
||||
|-- prowlarr ------- config
|
||||
|
|
||||
|-- sonarr --------- config
|
||||
| |_ downloads
|
||||
|
|
||||
|-- radarr --------- config
|
||||
| |_ downloads
|
||||
|
|
||||
|-- jackett -------- config
|
||||
|
|
||||
|-- qbittorrent ---- config
|
||||
| |_ downloads
|
||||
```
|
||||
|
||||
- Dans le paragraphe 1.a nous allons les créer avec une ligne de commande, et dans le paragraphe 1.b nous allons modifier le .env afin qu'il utilise bien ces dossiers ( en fonction de leurs localisation sur votre machine ).
|
||||
|
||||
### 1.a. Création des dossiers
|
||||
|
||||
- Avec `cd` aller dans le dossier de votre choix, par exemple "docker".
|
||||
Exemple : Si votre dossier "docker" ce trouve dans /volume1, alors la commande sera :
|
||||
`cd /volume1/docker`
|
||||
|
||||
- Maintenant que nous sommes dans le bon dossier, nous allons executer la commande suivante pour créer d'un coup, toute l'architecture nécessaire :
|
||||
|
||||
`mkdir -p downloads-vpn/vpn/{config,scripts} downloads-vpn/rutorrent/{data,passwd,downloads} downloads-vpn/prowlarr/config downloads-vpn/sonarr/{config,downloads} downloads-vpn/radarr/{config,downloads} downloads-vpn/jackett/config downloads-vpn/qbitorrent/{config,downloads}`
|
||||
|
||||
### 1.b. Modifications des .env
|
||||
- Récupérer sur votre machine les fichiers `.env`, `TUN.sh`, `docker-compose.yml` et `rtorrent-rutorrent.env`.
|
||||
|
||||
- Par defaut, il n'y a rien a modifier dans `rtorrent-rutorrent.env`.
|
||||
|
||||
- Dans le fichier `.env` vous allez devoir modifier plusieurs chose :
|
||||
|
||||
**PUID et PGID** devront correspondre aux ID de votre utilisateurs, plus d'info ici : [Connaitre le PUID / PGID d'un utilisateur](https://www.forum-nas.fr/viewtopic.php?f=56&t=13213)
|
||||
**RACINE** correspond au chemin vers le dossier downloads-vpn créé a l'étape 1.a.
|
||||
Dans ce cas, c'est : `/volume1/docker/downloads-vpn`
|
||||
|
||||
### 1.c Transfert des fichiers dans /downloads-vpn
|
||||
- Une fois les modifications effectuées, il faut transfert tous les fichiers dans le dossier `/downloads-vpn` précédemment créé ! Par exemple, avec FileZilla.
|
||||
|
||||
### 1.d Mise en place de la config .opvn
|
||||
|
||||
- Dans notre dossier `downloads-vpn/vpn/config`, nous allons placer notre configuration .ovpn récupéré sur notre serveur OpenVPN.
|
||||
|
||||
> **Note :** Si votre config VPN demande une identifications par mot de passe, alors il vous faudra modifier dans votre fichier .ovpn la ligne :
|
||||
>
|
||||
>```
|
||||
>auth-user-pass
|
||||
>```
|
||||
>par :
|
||||
>```
|
||||
>auth-user-pass /vpn/vpn.auth
|
||||
>```
|
||||
>
|
||||
>Dans le dossier `downloads-vpn/vpn/config` en plus du fichier .ovpn, vous aller devoir créer un fichier `vpn.auth` contenant 2 lignes, sur la 1ere ligne, votre identifiant de connexion au VPN, et sur la 2eme ligne, votre mot de passe.
|
||||
>
|
||||
>**Exemple :**
|
||||
>```
|
||||
>votreidentifiantdeconnexion
|
||||
>votremotdepasse
|
||||
>```
|
||||
|
||||
### 1.e Optionnel - Création et Execution de /tun
|
||||
- Si vous êtes sur un NAS de type Synology par exemple, alors la création du TUN est **obligatoire**.
|
||||
|
||||
- Pour cela :
|
||||
Recupérer le fichier `TUN.sh` présent, et placer le dans votre dossier `downloads-vpn`.
|
||||
|
||||
Vous devez être "root" pour l'executer, pour cela, passer en root avec sudo :
|
||||
```
|
||||
sudo su -
|
||||
```
|
||||
|
||||
Puis rendez-vous dans le dossier contenant TUN.sh, dans mon cas `/volume1/docker/downloads-vpn`
|
||||
```
|
||||
cd /volume1/docker/downloads-vpn
|
||||
```
|
||||
|
||||
on chmod le script pour le rendre executable :
|
||||
```
|
||||
chmod 0755 TUN.sh
|
||||
```
|
||||
|
||||
et executer le script :
|
||||
```
|
||||
./TUN.sh
|
||||
```
|
||||
|
||||
## 2. Création des conteneurs
|
||||
### 2.a Création du réseau
|
||||
- On créé le reseau `vpn-network` necesaire au fonctionnement du conteneurs VPN :
|
||||
|
||||
```
|
||||
docker network create vpn-network
|
||||
```
|
||||
|
||||
### 2.b Création des conteneurs
|
||||
Maintenant que votre "stack" est prete rendez-vous dans le dossier `downloads-vpn`, dans mon cas `/volume1/docker/downloads-vpn` :
|
||||
```
|
||||
cd /volume1/docker/downloads-vpn
|
||||
```
|
||||
|
||||
## 3. Les Bases
|
||||
> L'installation n'étant pas classique, si vous utilisez l'interface Docker de DSM par exemple, elle va refuser de démarrer les conteneurs rattachés au conteneur vpn ( car pour elle, il n'est relié a aucun réseau, et ne comprend pas que son réseau soit un conteneur.
|
||||
|
||||
Il faut donc obligatoirement utiliser les commandes en SSH ou autre logiciel de monitoring Docker compatible*. Voici quelques commandes de base :
|
||||
|
||||
**L'utilisation de [Portainer](https://www.forum-nas.fr/viewtopic.php?f=56&t=14030) est possible par exemple.*
|
||||
|
||||
### 3.a Commandes de bases ( Docker )
|
||||
- Arreter un conteneur : `docker stop <nom_du_conteneur>`
|
||||
Exemple pour le conteneur **rutorrent** : `docker stop rutorrent`
|
||||
|
||||
- Redémarrer un conteneur : `docker restart <nom_du_conteneur>`
|
||||
Exemple pour le conteneur **rutorrent** : `docker restart rutorrent`
|
||||
|
||||
- Démarrer un conteneur : `docker start <nom_du_conteneur>`
|
||||
Exemple pour le conteneur **rutorrent** : `docker start rutorrent`
|
||||
|
||||
- Supprimer un conteneur : `docker rm <nom_du_conteneur>`
|
||||
Exemple pour le conteneur **rutorrent** : `docker rm rutorrent`
|
||||
|
||||
- Créer / Mettre à jour la "stack" : `docker-compose up -d`
|
||||
Cette commande permet de créer la stack présent dans le fichier docker-compose.yml, les conteneurs non-existant seront créés, les modifiés seront mis à jour.
|
||||
> Note : Vous devez etre dans la dossier contenant le fichier docker-compose.yml pour que cette commande fonctionne.
|
||||
|
||||
### 3.b Accès aux interfaces ( WebUI )
|
||||
|
||||
- L'acces à chaque service se fait via une WebUI ( Interface Web ), sur un port quil lui est propre.
|
||||
- Pour rutorrent, c'est le port `8080`. Donc l'adresse sera sous la forme : `http://IP_DE_LA_MACHINE:8080`
|
||||
Exemple : Si l'adresse IP de votre machine est `192.168.1.10`, alors l'adresse d'accès sera : `http://192.168.1.10:8080`
|
||||
|
||||
- Ci-dessus la liste des ports des interfaces de chaque service :
|
||||
| Service | Port |
|
||||
| ------ | ------ |
|
||||
| jackett | 9117 |
|
||||
| prowlarr | 9696 |
|
||||
| rutorrent | 8080 |
|
||||
| sonarr | 8989 |
|
||||
| radarr | 7878 |
|
||||
| qbittorrent | 8586 |
|
||||
|
||||
## 4. Configuration de rutorrent
|
||||
Depuis l'interface SSH, les commandes ci-dessous sont à executer en étant a la racine de votre dossier `downloads-vpn`.
|
||||
|
||||
### 4.a Réactiver la fonction Effacer / Effacer et Supprimer les données
|
||||
- Par défaut dans l'image de crazymax, la fonction "Effacer et Supprimer les données" sur un torrent n'existe pas. Uniquement la fonction "Effacer", et celle-ci efface le torrent **ET** les données.
|
||||
|
||||
**Il n'est donc pas possible d'effacer simplement un torrent du client, sans supprimer les fichiers associés.**
|
||||
|
||||
Ici nous allons voir comment ré-activer cette fonction :
|
||||
|
||||
Ceci doit être fait, conteneur à l’arrêt, pour arrêter le conteneur, utiliser la commande :
|
||||
```
|
||||
docker stop rutorrent
|
||||
```
|
||||
|
||||
Pour réactiver cette fonction, il faut éditer le fichier `rtorrent-rutorrent.env` :
|
||||
|
||||
> Note : Vous pouvez l'éditer directement depuis SSH avec l'utilitaire `nano` : `nano rtorrent-rutorrent.env`.
|
||||
|
||||
Retirer **erasedata** de la ligne ( N°23 ) suivante :
|
||||
```
|
||||
RU_REMOVE_CORE_PLUGINS=erasedata,httprpc,geoip,geoip2
|
||||
```
|
||||
|
||||
Ce qui donne :
|
||||
```
|
||||
RU_REMOVE_CORE_PLUGINS=httprpc,geoip,geoip2
|
||||
```
|
||||
Enregistrer, et quitter.
|
||||
|
||||
Puis, nous allons editer le fichier `.rtorrent.rc` présent dans `downloads-vpn/rutorrent/data/rtorrent` :
|
||||
> Note : Vous pouvez l'éditer directement depuis SSH avec l'utilitaire `nano` : `nano rutorrent/data/rtorrent/.rtorrent.rc`.
|
||||
|
||||
Les deux dernieres lignes sont :
|
||||
```
|
||||
# Erase data when torrent deleted (no need erasedata plugin on ruTorrent)
|
||||
method.set_key = event.download.erased,delete_erased,"execute=rm,-rf,--,$d.data_path="
|
||||
```
|
||||
|
||||
|
||||
Nous allons commenter la commande avec le caractère `#` afin de la désactiver, ce qui donne :
|
||||
```
|
||||
# Erase data when torrent deleted (no need erasedata plugin on ruTorrent)
|
||||
#method.set_key = event.download.erased,delete_erased,"execute=rm,-rf,--,$d.data_path="
|
||||
```
|
||||
|
||||
Enregistrer, et quitter.
|
||||
|
||||
Nous allons re-créer le conteneur rutorrent, avec cette nouvelle configuration, pour cela nous executons simplement la commande : `docker-compose up -d`.
|
||||
|
||||
### 4.b Sécuriser l’accès à l'interface
|
||||
- La création du fichier htaccess afin de sécuriser l'acces a l'interface de rutorrent est très simple.
|
||||
|
||||
Arreter le conteneur :
|
||||
```
|
||||
docker stop rutorrent
|
||||
```
|
||||
|
||||
Puis executer la commande suivante :
|
||||
```
|
||||
docker run --rm -it httpd:2.4-alpine htpasswd -Bbn MON_PSEUDO MON_MOT_DE_PASSE >> $(pwd)/rutorrent/passwd/rutorrent.htpasswd
|
||||
```
|
||||
|
||||
Dans cette commande, il faut modifier :
|
||||
**MON_PSEUDO**, par le pseudo voulu pour l'identification
|
||||
**MON_MOT_DE_PASSE**, par le mot de passe souhaité pour l'identification
|
||||
|
||||
|
||||
Une fois la commande executée, redémarrer le conteneur rutorrent :
|
||||
```
|
||||
docker start rutorrent
|
||||
```
|
||||
|
||||
Maintenant, l'acces à l'interface de rutorrent réclame une identification :)
|
||||
|
||||
## 5. [Configuration de jackett](#5-configuration-de-jackett)]
|
||||
### 5.a [Configurer Flaresolverr](#5-a-configurer-flaresolverr)]
|
||||
|
||||
## 6. Aller plus loin
|
||||
- Retrouvez ici des astuces pour aller "un peu plus loin" dans la configurations de vos conteneurs, avec par exemple, la méthode pour rajouter des montages ( dossier de votre serveur dans le conteneur ), ou régler la mise à jour automatique de vos conteneurs.
|
||||
|
||||
/!\ Depuis l'interface SSH, les commandes ci-dessous sont à executer en étant à la racine de votre dossier `downloads-vpn`.
|
||||
|
||||
### 6.a Rajouter les chemins vers ces médias
|
||||
Comment rajouter simplement des montages de dossiers aux instances rutorrent, qbittorrent, sonarr, ... ?
|
||||
|
||||
Pour cela plusieurs méthodes, en voici une :
|
||||
Nous allons ici rajouter un dossier de Films ( /volume1/films ) et un dossier Series ( /volume1/series )
|
||||
Editer le fichier `.env` avec la commande `nano .env`
|
||||
|
||||
En dessus de la ligne `RACINE=...` rajouter les lignes vers vos medias sous la forme :
|
||||
```
|
||||
NOM_VARIABLE=/Chemin/Dossier
|
||||
```
|
||||
|
||||
Dans notre exemple, le fichier `.env` aura donc la forme suivante :
|
||||
```
|
||||
PUID=1000
|
||||
PGID=1000
|
||||
TZ=Europe/Paris
|
||||
|
||||
RACINE=/volume1/docker/downloads-vpn
|
||||
|
||||
FILMS=/volume1/films
|
||||
SERIES=/volume1/series
|
||||
```
|
||||
Une fois les modifications effectuées, on enregistre et on quitte le fichier.
|
||||
|
||||
Maintenant, nous allons donner acces à ces dossiers a nos conteneurs. Prenons exemple avec le conteneur rutorrent.
|
||||
Editer le fichier `docker-compose.yml` avec la commande `nano docker-compose.yml`
|
||||
|
||||
Trouver dans le fichier la configuration du conteneur rutorrent que voici :
|
||||
```
|
||||
rtorrent-rutorrent:
|
||||
image: crazymax/rtorrent-rutorrent:latest
|
||||
container_name: rutorrent
|
||||
# labels:
|
||||
# - com.centurylinklabs.watchtower.enable=true
|
||||
# - autoheal=true
|
||||
depends_on:
|
||||
- vpn
|
||||
env_file:
|
||||
- "./rtorrent-rutorrent.env"
|
||||
environment:
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=${TZ}
|
||||
network_mode: "service:vpn"
|
||||
volumes:
|
||||
- ${RACINE}/rutorrent/data:/data
|
||||
- ${RACINE}/rutorrent/passwd:/passwd
|
||||
- ${RACINE}/rutorrent/downloads:/downloads
|
||||
ulimits:
|
||||
nproc: 65535
|
||||
nofile:
|
||||
soft: 32000
|
||||
hard: 40000
|
||||
restart: unless-stopped
|
||||
```
|
||||
|
||||
Dans la partie `volumes`, nous allons rajouter 2 lignes correspondantes à nos dossiers Films et Series qui nous avons configurés dans le fichier `.env`.
|
||||
|
||||
De cette manière :
|
||||
```
|
||||
rtorrent-rutorrent:
|
||||
image: crazymax/rtorrent-rutorrent:latest
|
||||
container_name: rutorrent
|
||||
# labels:
|
||||
# - com.centurylinklabs.watchtower.enable=true
|
||||
# - autoheal=true
|
||||
depends_on:
|
||||
- vpn
|
||||
env_file:
|
||||
- "./rtorrent-rutorrent.env"
|
||||
environment:
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=${TZ}
|
||||
network_mode: "service:vpn"
|
||||
volumes:
|
||||
- ${RACINE}/rutorrent/data:/data
|
||||
- ${RACINE}/rutorrent/passwd:/passwd
|
||||
- ${RACINE}/rutorrent/downloads:/downloads
|
||||
- ${FILMS}:/media/film
|
||||
- ${SERIES}:/media/series
|
||||
ulimits:
|
||||
nproc: 65535
|
||||
nofile:
|
||||
soft: 32000
|
||||
hard: 40000
|
||||
restart: unless-stopped
|
||||
```
|
||||
De cette manières, les dossiers films et séries seront accessible dans le conteneur rutorrent dans un dossier /media. Vous pouvez suivre cette même procédure pour les autres conteneurs.
|
||||
|
||||
Pour appliquer les changements, il ne reste qu'à mettre à jour la stack avec la commande `docker-compose up -d`, plus d'info dans le point 3.a [Commandes de bases ( Docker )](#3-a-commandes-de-bases-docker).
|
||||
|
||||
### 6.b Mise à jour automatique ( watchtower )
|
||||
Watchtower est un conteneur qui va surveiller vos conteneurs à la recherche de mise à jour disponible ! Si une mise a jour est disponible, alors Watchtower, arrete le conteneur, récupere la nouvelle image, et re-créé le conteneur avec le nouvelle image.
|
||||
|
||||
Pour l'installation de Watchtower en Docker sur votre serveur, je vous laisse avec ce tuto : [Installation de Watchtower en Docker un NAS Synology](https://www.forum-nas.fr/viewtopic.php?f=56&t=14474), le point 1 vous apprendra à installer Watchtower.
|
||||
|
||||
|
||||
une fois Watchtower installé, il vous suffit de décommenter pour **chaque** services la ligne `labels` ( si cela n'est pas déja fait ) et la ligne `- com.centurylinklabs.watchtower.enable=true`.
|
||||
|
||||
**Exemple :**
|
||||
```
|
||||
rtorrent-rutorrent:
|
||||
image: crazymax/rtorrent-rutorrent:latest
|
||||
container_name: rutorrent
|
||||
labels:
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
# - autoheal=true
|
||||
depends_on:
|
||||
- vpn
|
||||
env_file:
|
||||
- "./rtorrent-rutorrent.env"
|
||||
environment:
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=${TZ}
|
||||
network_mode: "service:vpn"
|
||||
volumes:
|
||||
- ${RACINE}/rutorrent/data:/data
|
||||
- ${RACINE}/rutorrent/passwd:/passwd
|
||||
- ${RACINE}/rutorrent/downloads:/downloads
|
||||
ulimits:
|
||||
nproc: 65535
|
||||
nofile:
|
||||
soft: 32000
|
||||
hard: 40000
|
||||
restart: unless-stopped
|
||||
```
|
||||
La procédure est identique pour chacun des services du docker-compose que vous souhaitez surveiller.
|
||||
|
||||
Pour appliquer les changements, il ne reste qu'à mettre à jour la stack avec la commande `docker-compose up -d`, plus d'info dans le point 3.a [Commandes de bases ( Docker )](#3-a-commandes-de-bases-docker).
|
||||
|
||||
### 6.c Reboot automatique en cas de soucis ( autoheal )
|
||||
|
@ -1,38 +1,38 @@
|
||||
RT_DHT_PORT=6881
|
||||
XMLRPC_PORT=8000
|
||||
RUTORRENT_PORT=8080
|
||||
WEBDAV_PORT=9000
|
||||
RT_INC_PORT=50000
|
||||
|
||||
MEMORY_LIMIT=256M
|
||||
UPLOAD_MAX_SIZE=16M
|
||||
OPCACHE_MEM_SIZE=128
|
||||
MAX_FILE_UPLOADS=50
|
||||
REAL_IP_FROM=0.0.0.0/32
|
||||
REAL_IP_HEADER=X-Forwarded-For
|
||||
LOG_IP_VAR=remote_addr
|
||||
|
||||
XMLRPC_AUTHBASIC_STRING=rTorrent XMLRPC restricted access
|
||||
RUTORRENT_AUTHBASIC_STRING=ruTorrent restricted access
|
||||
WEBDAV_AUTHBASIC_STRING=WebDAV restricted access
|
||||
|
||||
RT_LOG_LEVEL=info
|
||||
RT_LOG_EXECUTE=false
|
||||
RT_LOG_XMLRPC=false
|
||||
|
||||
RU_REMOVE_CORE_PLUGINS=httprpc,_cloudflare,_noty,_noty2,cookies,extratio,extsearch,feeds,rss,rssurlrewrite,autotools,check_port,ipad,loginmgr,lookat,ratio,retrackers,rutracker_check,scheduler,screenshots,show_peers_like_wtorrent,spectrogram,unpack,uploadeta,xmpp,geoip,geoip2
|
||||
RU_HTTP_USER_AGENT=Mozilla/5.0 (Windows NT 6.0; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
|
||||
RU_HTTP_TIME_OUT=30
|
||||
RU_HTTP_USE_GZIP=true
|
||||
RU_RPC_TIME_OUT=5
|
||||
RU_LOG_RPC_CALLS=false
|
||||
RU_LOG_RPC_FAULTS=true
|
||||
RU_PHP_USE_GZIP=false
|
||||
RU_PHP_GZIP_LEVEL=2
|
||||
RU_SCHEDULE_RAND=10
|
||||
RU_LOG_FILE=/data/rutorrent/rutorrent.log
|
||||
RU_DO_DIAGNOSTIC=true
|
||||
RU_SAVE_UPLOADED_TORRENTS=true
|
||||
RU_OVERWRITE_UPLOADED_TORRENTS=false
|
||||
RU_FORBID_USER_SETTINGS=false
|
||||
RU_LOCALE=UTF8
|
||||
RT_DHT_PORT=6881
|
||||
XMLRPC_PORT=8000
|
||||
RUTORRENT_PORT=8080
|
||||
WEBDAV_PORT=9000
|
||||
RT_INC_PORT=50000
|
||||
|
||||
MEMORY_LIMIT=256M
|
||||
UPLOAD_MAX_SIZE=16M
|
||||
OPCACHE_MEM_SIZE=128
|
||||
MAX_FILE_UPLOADS=50
|
||||
REAL_IP_FROM=0.0.0.0/32
|
||||
REAL_IP_HEADER=X-Forwarded-For
|
||||
LOG_IP_VAR=remote_addr
|
||||
|
||||
XMLRPC_AUTHBASIC_STRING=rTorrent XMLRPC restricted access
|
||||
RUTORRENT_AUTHBASIC_STRING=ruTorrent restricted access
|
||||
WEBDAV_AUTHBASIC_STRING=WebDAV restricted access
|
||||
|
||||
RT_LOG_LEVEL=info
|
||||
RT_LOG_EXECUTE=false
|
||||
RT_LOG_XMLRPC=false
|
||||
|
||||
RU_REMOVE_CORE_PLUGINS=erasedata,httprpc,geoip,geoip2
|
||||
RU_HTTP_USER_AGENT=Mozilla/5.0 (Windows NT 6.0; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
|
||||
RU_HTTP_TIME_OUT=30
|
||||
RU_HTTP_USE_GZIP=true
|
||||
RU_RPC_TIME_OUT=5
|
||||
RU_LOG_RPC_CALLS=false
|
||||
RU_LOG_RPC_FAULTS=true
|
||||
RU_PHP_USE_GZIP=false
|
||||
RU_PHP_GZIP_LEVEL=2
|
||||
RU_SCHEDULE_RAND=10
|
||||
RU_LOG_FILE=/data/rutorrent/rutorrent.log
|
||||
RU_DO_DIAGNOSTIC=true
|
||||
RU_SAVE_UPLOADED_TORRENTS=true
|
||||
RU_OVERWRITE_UPLOADED_TORRENTS=false
|
||||
RU_FORBID_USER_SETTINGS=false
|
||||
RU_LOCALE=UTF8
|
Loading…
Reference in New Issue
Block a user