Synology migration Docker DSM vers docker-compose

chahba2054

Apprenti
26 Décembre 2020
35
0
6
salut
je pose mon probleme afin d'esperer trouver une solution sans perdre ma configuration actuel
migrer container dsm vers conainer compose
j'ai un ds718+ avec plusieur container 5( radarr, sonarr,ples....)
ma configruration actuelle
/volume1/docker/jackett
/plex
etc...
merci pour votre aide
 
On va faire étape par étape, par exemple, pour plex, pourrai tu donner des screens ( pas forcément besoin de les afficher en images, indique juste les lien dans le message, sa evite d'avoir un post a longueur ) de la config actuelle ? Volume, reseau, variable, ..
 
voici ma configuration pour plex
https://ibb.co/M86gN3d
https://ibb.co/GVk4rMw
https://ibb.co/6yzMD0w
https://ibb.co/4Nrx70v
 
EVOTk a dit:
Le dossier docker est dans volume1 ?
Utilise tu le décodage hard ? ( modif avec dev/dri ) ?

oui il est dans volume 1
décodage hard je ne connais pas donc je ne pense pas l'avoir utiliser
 
D'accord, voici donc ma retranscription docker-compose selon moi :

Code:
version: "2.1"
services:
  plex:
    image: ghcr.io/linuxserver/plex
    container_name: plex
    network_mode: host
    labels:
      - com.centurylinklabs.watchtower.enable=true
    environment:
      - PUID=1026
      - PGID=100
      - VERSION=latest
    volumes:
      - /volume1/docker/rutorrent-vpn/downloads/animes.film:/data/animes.film
      - /volume1/docker/rutorrent-vpn/downloads/documentaires:/data/documentaires
      - /volume1/docker/rutorrent-vpn/downloads/animes:/data/animes
      - /volume1/docker/rutorrent-vpn/downloads/series:/data/tvshows
      - /volume1/docker/rutorrent-vpn/downloads/film:/data/movies
      - /volume1/docker/plex/certificat:/certificat
      - /volume1/docker/plex/config:/config
    restart: unless-stopped

Comme on est jamais trop prudent, je te conseil depuis Docker DSM d'exporter ta config du conteneur plex, comme cela en cas de soucis, tu pourra revenir sur ton ancien conteneur en 2 clics > https://i.imgur.com/cWlDQ7C.png

Donc le compose ci dessus, tu le place dans un fichier docker-compose.yml dans ton dossier docker/plex
Puis en ssh, tu va dans /volume1/docker/plex
et tu fait la commande : docker-compose up -d

Bien sur, il te faut avoir au moins stopper l'ancien conteneur plex avant ! Je te conseil meme de le supprimé pour éviter tout risque ! Si tu as sauvegardé ta config, et du moment qsue tu ne supprimer pas les fichier de plex, supprimer le conteneur n'a aucun risque ! Par contre, avoir les 2 conteneurs en route en meme temps pourrai te corrompre la base de données de plex ! ( puisque les deux conteneurs voudront utiliser la meme base de données )

Edit : Rajout du labels pour watchtower dans le compose
 
EVOTk a dit:
D'accord, voici donc ma retranscription docker-compose selon moi :

Code:
version: "2.1"
services:
  plex:
    image: ghcr.io/linuxserver/plex
    container_name: plex
    network_mode: host
    labels:
      - com.centurylinklabs.watchtower.enable=true
    environment:
      - PUID=1026
      - PGID=100
      - VERSION=latest
    volumes:
      - /volume1/docker/rutorrent-vpn/downloads/animes.film:/data/animes.film
      - /volume1/docker/rutorrent-vpn/downloads/documentaires:/data/documentaires
      - /volume1/docker/rutorrent-vpn/downloads/animes:/data/animes
      - /volume1/docker/rutorrent-vpn/downloads/series:/data/tvshows
      - /volume1/docker/rutorrent-vpn/downloads/film:/data/movies
      - /volume1/docker/plex/certificat:/certificat
      - /volume1/docker/plex/config:/config
    restart: unless-stopped

Comme on est jamais trop prudent, je te conseil depuis Docker DSM d'exporter ta config du conteneur plex, comme cela en cas de soucis, tu pourra revenir sur ton ancien conteneur en 2 clics > https://i.imgur.com/cWlDQ7C.png

Donc le compose ci dessus, tu le place dans un fichier docker-compose.yml dans ton dossier docker/plex
Puis en ssh, tu va dans /volume1/docker/plex
et tu fait la commande : docker-compose up -d

Bien sur, il te faut avoir au moins stopper l'ancien conteneur plex avant ! Je te conseil meme de le supprimé pour éviter tout risque ! Si tu as sauvegardé ta config, et du moment qsue tu ne supprimer pas les fichier de plex, supprimer le conteneur n'a aucun risque ! Par contre, avoir les 2 conteneurs en route en meme temps pourrai te corrompre la base de données de plex ! ( puisque les deux conteneurs voudront utiliser la meme base de données )

Edit : Rajout du labels pour watchtower dans le compose
je clik sur effacer ou supprimer?
 
Poste les configs des tes autres conteneurs, ce soir je vais au lit :lol: mais je regarderai sa demain des que j'ai du temps libre.

Si ils y a des infos sensibles ( genre adresse mail, passe,. . ) envoi en mp
 
voici les autre configuration

jackett
https://ibb.co/XztLq3b
https://ibb.co/RvfCvDp
https://ibb.co/VNbwfTP

radarr
https://ibb.co/3sxX6mb
https://ibb.co/jDtQvfg
https://ibb.co/rpn9Mhp

sonarr
https://ibb.co/HXZ0Gtx
https://ibb.co/YjR1Q8D
https://ibb.co/JsB1X5k

portnair
https://ibb.co/vhjHkH1
https://ibb.co/K7q6t7w
https://ibb.co/17Rp3Ln

flaresolverr
https://ibb.co/MVg4qWv
https://ibb.co/wdhvwMB
https://ibb.co/7YrHMzG
https://ibb.co/h2dqjXm

Merci beaucoup
 
Salut hahba2054
Nickel tout ça ;)
Alors, comme faut que je rush dans une dizaine de minutes, je vais déjà te faire le portainer. Car avec ce denrier, tu pourras faire les autres directement depuis portainer ;) Même s'il a des défauts, il est très pratique pour gérer les conteneurs : arrêter, redémarrer, vérifier la configuration avec le docker-compose...
Seul bémo : il ne peut pas être installé à partir de lui même, mais ça semble logique ^^
Une fois qu'il sera installé, tu pourras éventuellement recréer ton conteneur plex à partir de Portainer :)

Bon alors voilà ce que tu devrais utiliser pour Portainer : comme il y a eu une mise à jour, on change le dépôt qui devient portainer/portainer-ce pour la V2. Petit conseil, fait une sauvegarde du dossier docker/portainer/data/ , on sait jamais... Perso je n'ai pas eu de problèmes à la transition entre la v1.x et la v2.0.
Donc le fichier docker-compose.yml
Code:
version: "2.1"
services:
  portainer:
    image: portainer/portainer-ce:latest
    container_name: portainer
    hostname: portainer
    network_mode: bridge
    environment:
      - PUID=1045
      - GUID=100
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
    volumes:
      - /volume1/docker/portainer/data:/data
      - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - 9000:9000
    restart: always

Même méthode ensuite, tu supprimes le conteneur existant depuis l'interface de DSM comme tu as fait pour le "vieux" Plex.
Et via la CLI en SSH (donc root), tu lances depuis le dossier /volumeX/docker/portainer/ (au fait, c'est quoi le n° du volume sur lequel tu as le dossier docker ?) :
Code:
docker-compose up -d

Voilà une fois fait, tu peux te connecter à Portainer avec le port 9000.
Ensuite tu peux créer les autres conteneurs depuis lui :)
Il faut copier/coller le contenu d'un fichier docker-compose.yml dans une nouvelle "stack".
Voilà ce que j'ai dans mon portainer : ce qui est grisé a été créé via la ligne de commande, donc n'est pas modifiable depuis Portainer, mais il est toujours possible d'arrêter/redémarrer... les conteneurs depuis Portainer.


Petit tuto rapide pour créer une stack avec comme exemple Tautulli :
1/ On ajoute une "Stack" avec le bouton "Add Stack" :


2/ On choisi un nom :


3/ Soit tu importes le fichier docker-compose.yml que tu auras créé, soit tu copies/colles son contenu, moi j'ai choisi le copier/coller via le WebEditor : (je mets le contenu du docker-compose plus bas pour que tu en fasses un copier/coller si tu veux tenter sa création)

Note pour la ligne : - PUID=1053 # Utiliser la commande (en SSH) : id NOM_UTILISATEUR
Il faut choisir un utilisateur qui va avoir accès aux données du conteneur et aux autres ressources, je te conseille de garder le même user que celui de plex pour tautulli.
Pour d'autres conteneurs, tu aviseras, moi je crée un utilisateur dédié à chaque conteneur, ou groupe de conteneur (comme ceux du pack monitoring).


4/ Reste plus qu'a lancer la création :


5/ une fois le conteneur créé il va démarrer automatiquement et tu auras ceci :

Le plus utile est l'accès aux logs : il faut utiliser le premier icone de ce groupe :

je te laisse découvrir ce que font les autres ;)

Voilà voilà, perso dès que je peux passer par Portainer, je le fais. C'est pratique. Mais continue à chaque fois de créer un fichier docker-compose.yml pour chaque conteneur que tu places dans le dossier du conteneur, ça peut toujours servir un jour, par exemple en cas de plantage de Portainer ^^
Voilà voilà :)
Si Evotk n'est pas revenu t'aider, ou si tu n'arrives pas à le faire toi même, je viendrais ^^

Ha si, petit exercice que tu devrais faire ^^ En gros un petit TP :D
Essayer de faire toi-même un fichier docker-compose, par exemple pour le conteneur : flaresolverr
Va voir ce qui est dit dans la page de cocker HUB : https://hub.docker.com/r/flaresolverr/flaresolverr
Ça aide très souvent à faire le docker-compose ;)
Propose nous ensuite ta solution, et on la validera avant que tu ne te lances ;)


Le fichier docker-compose :
Code:
---
version: "2.1"
services:
  linuxserver_plex_tautulli:
    #image: linuxserver/tautulli:latest
    image: ghcr.io/linuxserver/tautulli:amd64-latest
    container_name: linuxserver_plex_tautulli
    environment:
      - PUID=1053  # Utiliser la commande (en SSH) : id NOM_UTILISATEUR
      - PGID=100
      - TZ=Europe/Paris
      
    # ###############
    # Le label ci-dessous permet à Watchtower de faire les mises à jour automatiquement
    # Cela peut-être supprimé si Watchtower n'est pas utilisé.
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
    # ###############
    
    volumes:
      - "/volume1/docker/plex_tautulli/config:/config"
      - "/volume1/docker/plex/config/Library/Application Support/Plex Media Server/Logs:/logs:ro"
    ports:
      - 8181:8181
    restart: unless-stopped
 
@hahba2054
Je viens de me dire que les conteneurs suivants pourraient être configuré en une seule fois vu qu'ils semblent liés dans le fonctionnement que tu en as :
radarr, sonarr, flaresolver, jackett

On peut grouper les docker-compose de ces 4 conteneurs en un seul, et ils seront dans le même network bridge :)
 
MilesTEG1 a dit:
@hahba2054
Je viens de me dire que les conteneurs suivants pourraient être configuré en une seule fois vu qu'ils semblent liés dans le fonctionnement que tu en as :
radarr, sonarr, flaresolver, jackett

On peut grouper les docker-compose de ces 4 conteneurs en un seul, et ils seront dans le même network bridge :)
voila pour l'instant ce que j'ai fait
créer portainer en docker compose
rajouter plex en docker compose sur container
copier coller le docker composer de flaresolverr telle quel sur portainer ça a fonctionné
voici le compose
c'est quoi la difference de regouper les docker compose ou qui reste seule?
version: "2.1"
services:
flaresolverr:
# DockerHub mirror flaresolverr/flaresolverr:latest
image: ghcr.io/flaresolverr/flaresolverr:latest
container_name: flaresolverr
environment:
# Used to change the verbosity of the logging
- LOG_LEVEL=info
# Enables hcaptcha-solver => https://github.com/JimmyLaurent/hcaptcha-solver
#- CAPTCHA_SOLVER=hcaptcha-solver
# Enables CaptchaHarvester => https://github.com/NoahCardoza/CaptchaHarvester
#- CAPTCHA_SOLVER=harvester
#- HARVESTER_ENDPOINT=https://127.0.0.1:5000/token
ports:
- 8191:8191
restart: unless-stopped
 
Salut,
Afin de conserver la mise en forme des composes utilise les balises :
Code:

;)

Pour Sonarr et Radar pourrai tu me dire la branch que tu utilise ? ( ou quelle version de chaque logiciel utilise tu )

Je prépare les composes ...
 
EVOTk a dit:
Salut,
Afin de conserver la mise en forme des composes utilise les balises :
Code:

;)

Pour Sonarr et Radar pourrai tu me dire la branch que tu utilise ? ( ou quelle version de chaque logiciel utilise tu )

Je prépare les composes ...
radarr version 3.0.1.4259-ls88 par linuxserver.io
sonarr Version 2.0.0.5344
 
chahba2054 a dit:
EVOTk a dit:
Salut,
Afin de conserver la mise en forme des composes utilise les balises :
Code:

;)

Pour Sonarr et Radar pourrai tu me dire la branch que tu utilise ? ( ou quelle version de chaque logiciel utilise tu )

Je prépare les composes ...
radarr version 3.0.1.4259-ls88 par linuxserver.io
sonarr Version 2.0.0.5344
Tu veux bien reposter ton docker-compose avec les balise code ? que je vois si tout va bien dedans ^^
 
MilesTEG1 a dit:
chahba2054 a dit:
EVOTk a dit:
Salut,
Afin de conserver la mise en forme des composes utilise les balises :


;)

Pour Sonarr et Radar pourrai tu me dire la branch que tu utilise ? ( ou quelle version de chaque logiciel utilise tu )

Je prépare les composes ...
radarr version 3.0.1.4259-ls88 par linuxserver.io
sonarr Version 2.0.0.5344
Tu veux bien reposter ton docker-compose avec les balise code ? que je vois si tout va bien dedans ^^

comment trouver balise code?
 
version: "2.1"
services:
flaresolverr:
# DockerHub mirror flaresolverr/flaresolverr:latest
image: ghcr.io/flaresolverr/flaresolverr:latest
container_name: flaresolverr
environment:
# Used to change the verbosity of the logging
- LOG_LEVEL=info
# Enables hcaptcha-solver => https://github.com/JimmyLaurent/hcaptcha-solver
#- CAPTCHA_SOLVER=hcaptcha-solver
# Enables CaptchaHarvester => https://github.com/NoahCardoza/CaptchaHarvester
#- CAPTCHA_SOLVER=harvester
#- HARVESTER_ENDPOINT=https://127.0.0.1:5000/
labels:
- "com.centurylinklabs.watchtower.enable=true"
ports:
- 8191:8191
restart: unless-stopped
plex


version: "2.1"
services:
plex:
image: ghcr.io/linuxserver/plex
container_name: plex
network_mode: host
labels:
- com.centurylinklabs.watchtower.enable=true
environment:
- PUID=1026
- PGID=100
- VERSION=latest
volumes:
- /volume1/docker/rutorrent-vpn/downloads/animes.film:/data/animes.film
- /volume1/docker/rutorrent-vpn/downloads/documentaires:/data/documentaires
- /volume1/docker/rutorrent-vpn/downloads/animes:/data/animes
- /volume1/docker/rutorrent-vpn/downloads/series:/data/tvshows
- /volume1/docker/rutorrent-vpn/downloads/film:/data/movies
- /volume1/docker/plex/certificat:/certificat
- /volume1/docker/plex/config:/config
restart: unless-stopped