Mise en place de la Stack
Créer un fichier docker-compose.yaml puis saisir la configuration suivante.
Remplacer les /path/to/ par les chemins voulu pour chaque configuration.
Remplacer les variables <variable> par les valeurs nécessaires.
services:
jackett:
image: lscr.io/linuxserver/jackett:latest
container_name: jackett
network_mode: "service:gluetun"
# ports: (il passe par gluten) car il est en network mode 'gluten'
# - 9117:9117 # port redirigé dans le container gluten
environment:
- PUID=1000
- PGID=1006
- TZ=Europe/Paris
# - AUTO_UPDATE=true #optional
# - RUN_OPTS=<run options here> #optional
volumes:
- /path/to/conf/jackett/config:/config
- /path/to/media/downloads:/downloads
restart: unless-stopped
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
container_name: qbittorrent
network_mode: "service:gluetun"
environment:
- PUID=1000
- PGID=1006
- TZ=Europe/Paris
- WEBUI_PORT=8085
volumes:
- /path/to/conf/qbittorrent/config:/config
- /path/to/media/downloads:/downloads
# ports: (ils passent par gluten) car ils sont en network mode 'gluten'
# - 8085:8085 # port redirigé dans le container gluten
# - 6881:6881
# - 6881:6881/udp
restart: unless-stopped
radarr:
image: lscr.io/linuxserver/radarr:latest
container_name: radarr
networks:
medianet:
ipv4_address: 172.30.0.71 # Definition statique de l'adresse ip du container
environment:
- PUID=1000
- PGID=1006
- TZ=Europe/Paris
volumes:
- /path/to/conf/radarr/config:/config
- /path/to/media/film:/movies #optional
- /path/to/media/downloads:/downloads #optional
ports:
- 7878:7878
restart: unless-stopped
sonarr:
image: lscr.io/linuxserver/sonarr:latest
container_name: sonarr
networks:
medianet:
ipv4_address: 172.30.0.72 # Definition statique de l'adresse ip du container
environment:
- PUID=1000
- PGID=1006
- TZ=Europe/Paris
volumes:
- /path/to/conf/sonarr/config:/config
- /path/to/media/series:/tv #optional
- /path/to/media/downloads:/downloads #optional
ports:
- 8989:8989
restart: unless-stopped
# readarr:
# image: lscr.io/linuxserver/readarr:develop
# container_name: readarr
# networks:
# medianet:
# ipv4_address: 172.30.0.73 # Definition statique de l'adresse ip du container
# environment:
# - PUID=1000
# - PGID=1006
# - TZ=Europe/Paris
# volumes:
# - /path/to/conf/readarr/config:/config
# - /path/to/media/books:/ebooks #optional
# - /path/to/media/downloads:/downloads #optional
# ports:
# - 8787:8787
# restart: unless-stopped
jellyseerr:
image: fallenbagel/jellyseerr:latest
container_name: jellyseerr
networks:
medianet:
ipv4_address: 172.30.0.74 # Definition statique de l'adresse ip du container
environment:
- LOG_LEVEL=debug
- TZ=Europe/Paris
ports:
- 5055:5055
volumes:
- /path/to/conf/jellyseerr/config:/app/config
restart: unless-stopped
gluetun:
image: qmcgaw/gluetun
container_name: gluten
networks:
medianet:
ipv4_address: 172.30.0.254 # Definition statique de l'adresse ip du container
ports: # Tous les ports redirigé par ce container passe par le VPN
- 9117:9117
- 8085:8085
- 6881:6881
- 6881:6881/udp
- 8191:8191
cap_add:
- NET_ADMIN
environment:
- VPN_SERVICE_PROVIDER=<provider> # proton, cyberghost etc..
- VPN_TYPE=openvpn # ou wireguard ou custom
- OPENVPN_USER=<user> # Utilisateur du compte
- OPENVPN_PASSWORD=<password> # Mot de passe du compte
- SERVER_COUNTRIES=<localisation> # Localisation du serveur VPN : Netherlands,Spain,France selon les serveurs disponibles
restart: unless-stopped
flaresolverr: # Permet de résoudre le cloudfare du site si il y'en a un
image: 21hsmw/flaresolverr:nodriver
container_name: flaresolverr
network_mode: "service:gluetun" # Passe par le réseau gluten
environment:
- LOG_LEVEL=${LOG_LEVEL:-debug}
- LOG_HTML=${LOG_HTML:-false}
- CAPTCHA_SOLVER=${CAPTCHA_SOLVER:-none}
- TZ=Europe/Paris
# ports: (ils passent par gluten) car ils sont en network mode 'gluten'
#ports:
# - "8191:8191" # port redirigé dans le container gluten
restart: unless-stopped
volumes:
qbittorrent:
jackett:
radarr:
sonarr:
jellyseerr:
flaresolverr:
networks:
medianet:
ipam:
config:
- subnet: 172.30.0.0/24