gaetan.cambier Posté(e) le 26 octobre 2015 Partager Posté(e) le 26 octobre 2015 voila, je suis obliger de lancer mon container docker avec le paramètre "--device" lorsque je stop/start mon container via l'interface, le syno semble éiminer ce paramètre, ce qui n'est pas le cas de la ligne de commande heureusement MAIS, il faudra tôt ou tard rebooter ce nas pour une update ... Donc, comment faire pour que le container ne soit pas lancer par syno lors du reboot ? (je gère le reste :p) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 26 octobre 2015 Partager Posté(e) le 26 octobre 2015 Le syno relance les container qui étaient lancés lors de l’arrêt Une possibilité serait donc de créer un script d'upstart dans /usr/local/etc/rc.d/docker.sh (ou dans /usr/syno/etc/rc.d/S99docker.sh) case start : docker start --device= .... (j'ajouterai un call au stop avant le start pour être certain) case stop : docker stop ID_du_container ... Je n'ai pas testé, c'est une idée comme ça en passant Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 27 octobre 2015 Auteur Partager Posté(e) le 27 octobre 2015 Le syno relance les container qui étaient lancés lors de l’arrêt Une possibilité serait donc de créer un script d'upstart dans /usr/local/etc/rc.d/docker.sh (ou dans /usr/syno/etc/rc.d/S99docker.sh) case start : docker start --device= .... (j'ajouterai un call au stop avant le start pour être certain) case stop : docker stop ID_du_container ... Je n'ai pas testé, c'est une idée comme ça en passant je savait que c'etait toi qui repondrai ici :p j'ai un peu regarder le start-stop-status de docker, il monte aufs, des module iptables, donc, il y a un problème : si on lance le script trop tot : on a pas tout pour faire fonctionner docker si c'est trop tard, ben le container est lancé par le nas et pas par le script :s alors, c'est p-e con, mais l'iddée serait celle-ci : je perturbe pas le nas et docker, je lui laisse faire ses conneries et après, je fait ceci : #!/bin/ash docker stop domoticz docker rm domoticz USB0=$(ls /dev/ttyACM*) docker run -d -p 12345:8080 --name=domoticz -v /volume1/docker/data/domoticz/config:/config -v /volume1/docker/data/domoticz/etc/localtime:/etc/localtime:ro --device=$USB0 sdesbure/domoticz je t'avoue que j'ai un peu de mal avec docker, mais de toute facon, je ne perd rien vu que ma config n'est pas stockée dans le container Lien vers le commentaire Partager sur d’autres sites More sharing options...
lndiana Posté(e) le 27 octobre 2015 Partager Posté(e) le 27 octobre 2015 Bonjour, Débutant avec docker, j'ai lu qu'il fallait mieux éviter de passer par l'interface du syno pour gérer docker. J'ai donc installé le spk de docker, et je m'en sers ensuite juste pour télécharger les images. Ensuite, en ligne de commande, je créé mon container comme ca : docker run --name=[NEW CONTAINER] -d --restart=always --device=/dev/ttyUSB0:/dev/ttyUSB0 --device=/dev/ttyUSB1:/dev/ttyUSB1 -p 2080:80 -p 2022:22 -p 2083:8083 -p 2070:8070 -p 2001:9001 [IMAGE] Ca marche plutot bien et le container redémarre au reboot du NAS. Par contre, j'ai systématiquement des problème de droits sur le serveur web (nginx) hébergé dans l'image quand il se relance au reboot du NAS... Alors que ca ne le fait pas si je le relance en ligne de commande.. Je pige pas. Si quelqu'un sait avec quel user system le syno lance les container docker? Merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 27 octobre 2015 Partager Posté(e) le 27 octobre 2015 #!/bin/ash docker stop domoticz docker rm domoticz USB0=$(ls /dev/ttyACM*) docker run -d -p 12345:8080 --name=domoticz -v /volume1/docker/data/domoticz/config:/config -v /volume1/docker/data/domoticz/etc/localtime:/etc/localtime:ro --device=$USB0 sdesbure/domoticz c'est à peu près ce que je te proposais, pas de soucis à lancer le script trop tard si tu fais le stop+rm (tu peux aussi lancer ton conteneur avec docker run --rm=true pour supprimer le conteneur à son arrêt) pour le compte utilisé par syno, un ps devrait te répondre, mais je pense que c'est root Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 27 octobre 2015 Auteur Partager Posté(e) le 27 octobre 2015 c'est à peu près ce que je te proposais, j'avais pas bu mon litre de café pour le comprendre :p Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 27 octobre 2015 Partager Posté(e) le 27 octobre 2015 pour le compte utilisé, c'est bien root pour le script , je ferai ça : #!/bin/sh #/usr/syno/etc/rc.d/S99custoDocker.sh CONTAINERNAME="test" IMAGE="repo/image" ###### PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/bin DOCKER_BIN="docker" DOCKER_OPTIONS="" docker_start() { $DOCKER_BIN run $DOCKER_OPTIONS --name $CONTAINERNAME -d $IMAGE } docker_stop() { $DOCKER_BIN inspect --format="{{ .State.Running }}" $CONTAINERNAME > /dev/null 2>&1 if [ $? -eq 0 ]; then $DOCKER_BIN rm -f $CONTAINERNAME fi } case "$1" in start) docker_stop docker_start RETVAL=$? ;; stop) docker_stop RETVAL=$? ;; restart) docker_stop docker_start ;; *) echo "start/stop/restart" exit 1 ;; esac exit $RETVAL je n'ai pas testé son fonctionnement au reboot (pas envie de relancer un syno), mais ça ne devrait pas poser de problèmes edit : j'ai oublié les commentaires, faites moi signe si c'est nécessaire Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 30 octobre 2015 Auteur Partager Posté(e) le 30 octobre 2015 j'ai tapé mon script dans /usr/local/etc/rc.d et j'ai fait mon update --> reboot bizarrement ... aucun problème tout fonctionne du premier coup je vais commencer à apprécier docker :p Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 30 octobre 2015 Partager Posté(e) le 30 octobre 2015 Il y a 11 heures, gaetan.cambier a dit : bizarrement ... aucun problème tout fonctionne du premier coup pourquoi bizarrement ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 30 octobre 2015 Auteur Partager Posté(e) le 30 octobre 2015 Bah, tu sais, les petit soucis, ça arrive ;) Enfin pour l'instant je me bah plus avec les périphérique zwave et leur configuration :s Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.