Pour la facilité de configuration et de maintenabilité le choix s'est tout de suite porté sur Docker compose, énormément de support et de docs sont disponible.
Aussi selon TRaSH :
Pourquoi Docker sur Linux ?
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run hello-world
On va pouvoir commencer à s'amuser (spoiler : non), mais grâce à la doc du wiki de Servarr, on s'en sort quand même pas mal ! Premièrement j'ai décidé de créer un utilisateur dédié aux containers multimédias subtilement nommé "media", oui, original.
sudo useradd media
Vu que c'est le deuxième utilisateur créé, (le premier provient de mon install de debian), il obtient le PUID et le PGID 1001 (info intéressante pour après).
Et viens le moment hyper marrant de créé une arborescence complète et cohérente, (toute la partie data est pompé sur le guide docker de servarr, merci !)
data
└───media
│ └───movies
│ └───music
│ └───tv
└───torrents
│ └───movies
│ └───music
│ └───tv
docker
│ compose.yml
└───appdata
└───container data folder
Et voici les commandes que j'utilise de façon totalement déraisonnée pour appliquer les ACL sur mes arborescences :
#Attribution de l'ownership sur l'arbo data (pareil pour l'arbo /docker/appdata)
sudo chown -R media:media /data
#config ACLs
sudo chmod -R a=,a+rX,u+w,g+w /data
Prowlarr est un gestionnaire/proxy d'indexation basé sur la pile de base populaire arr .net/reactjs. Prowlarr prend en charge la gestion des trackers Torrent et des indexeurs Usenet. Il s'intègre parfaitement à LazyLibrarian , Lidarr , Mylar3 , Radarr , Readarr et Sonarr, offrant une gestion complète de vos indexeurs sans qu'aucune configuration d'indexeur par application ne soit requise (nous faisons tout).
Voici la partie du compose.yml de Pré au lard :
services:
prowlarr:
container_name: prowlarr
image: lscr.io/linuxserver/prowlarr:latest
restart: unless-stopped
ports:
- 9696:9696
environment:
- PUID=1001
- PGID=1001
- TZ=Europe/Paris
dns:
- 8.8.8.8
- 8.8.4.4
volumes:
- /docker/appdata/prowlarr:/config
- /data:/data
Si vous avez suivi on voit bien que le container est executé avec les PUID et PGID 1001, autres options, la timezone et le dns qui peuvent être utile, pour le TZ, avoir l'heure exact sur les logs c'est bien et le dns est très utile pour aller résoudre des adresses !
Côté volume on s'en tient au plan de base, la config dans un dossier a part, sous /docker/appdata/ et le container à accès à toute l'arborescence /data (recommandé).
Lidarr est un gestionnaire de collection de musique pour les utilisateurs Usenet et BitTorrent. Il peut surveiller plusieurs flux RSS pour les nouveaux morceaux de vos artistes préférés et les récupérer, les trier et les renommer. Il peut également être configuré pour mettre à niveau automatiquement la qualité des fichiers déjà téléchargés lorsqu'un format de meilleure qualité devient disponible.
Voici la partie du compose.yml de Lit Dard :
services:
lidarr:
container_name: lidarr
image: lscr.io/linuxserver/lidarr:latest
restart: unless-stopped
ports:
- 8686:8686
environment:
- PUID=1001
- PGID=1001
- TZ=Europe/Paris
volumes:
- /docker/appdata/lidarr:/config
- /data:/data
Rien d'exceptionnel, la conf reste identique, à part le numéro de port.
Radarr est un gestionnaire de collection de films pour les utilisateurs Usenet et BitTorrent. Il peut surveiller plusieurs flux RSS pour les nouveaux films et s'interface avec les clients et les indexeurs pour les récupérer, les trier et les renommer. Il peut également être configuré pour mettre à niveau automatiquement la qualité des fichiers existants dans la bibliothèque lorsqu'un format de meilleure qualité devient disponible.
Voici la partie du compose.yml de Rat Dard :
services:
radarr:
container_name: radarr
image: lscr.io/linuxserver/radarr:latest
restart: unless-stopped
logging:
driver: json-file
ports:
- 7878:7878
environment:
- PUID=1001
- PGID=1001
- TZ=Europe/Paris
volumes:
- /etc/localtime:/etc/localtime:ro
- /docker/appdata/radarr:/config
- /data:/data
Sonarr est un gestionnaire de collection de séries pour les utilisateurs Usenet et BitTorrent. Il peut surveiller plusieurs flux RSS pour les nouveaux épisodes de vos émissions préférées et les récupérer, les trier et les renommer. Il peut également être configuré pour mettre à niveau automatiquement la qualité des fichiers déjà téléchargés lorsqu'un format de meilleure qualité devient disponible.
Voici la partie du compose.yml de Sonne Art :
services:
sonarr:
container_name: sonarr
image: lscr.io/linuxserver/sonarr:latest
restart: unless-stopped
logging:
driver: json-file
ports:
- 8989:8989
environment:
- PUID=1001
- PGID=1001
- TZ=Europe/Paris
volumes:
- /etc/localtime:/etc/localtime:ro
- /docker/appdata/sonarr:/config
- /data:/data