Aller au contenu

[TUTO] Docker : Introduction


.Shad.

Messages recommandés

Le 10/01/2020 à 02:46, .Shad. a dit :

Cette commande permet de créer le conteneur, on doit ensuite taper :


docker start heimdall

pour exécuter le conteneur (pensez à ajouter sudo aux commandes docker si vous n'êtes pas connecté en root).
Assez intuitivement, pour arrêter le conteneur on tape :


docker stop heimdall

Assez intuitivement c'est :

docker restart <nom_du_conteneur>

pour redémarrer un conteneur.

Sinon :

docker --help

donne ce genre d'information.

Lien vers le commentaire
Partager sur d’autres sites

Typiquement l'erreur liée au fait que tu n'aies pas ajouté sudo au début de ta commande.
Par défaut tous les comptes utilisateurs, même admin, n'appartiennent pas au groupe docker.

Donc soit ajouter sudo en début de commande, soit te connecter en root via SSH et taper la même commande.

Lien vers le commentaire
Partager sur d’autres sites

il y a 10 minutes, .Shad. a dit :

Typiquement l'erreur liée au fait que tu n'aies pas ajouté sudo au début de ta commande.
Par défaut tous les comptes utilisateurs, même admin, n'appartiennent pas au groupe docker.

Donc soit ajouter sudo en début de commande, soit te connecter en root via SSH et taper la même commande.

Niquel merci ça marche ! 😉

Lien vers le commentaire
Partager sur d’autres sites

J'utilise Terminus sur iOS et en faisant " sudo docker start airvideohd " il me le démarre et "sudo docker stop airvideohd " pour le stopper.

Cependant il me demande le mdp user à la fin ce qui est assez énervant sachant que je suis déjà connecté au début...

 

Ensuite sur iOS dans l'app raccourcis, on peux créer un raccourcis pour se connecter en SSH et faire un script.

Alors j'ai mis mon nom d'hôte, user mdp, port et j'ai mis la commande  " sudo docker start airvideohd " .

Le script est validé, aucune erreur mais il ne me l'a pas allumé pour autant.. Alors est-ce parcequ'il demande se foutu mdp ? Ou un truc avec une clé ? Si quelqu'un sait comment faire pour créer ce petit raccourcis pour que je puisse en un clic faire deux raccourcis qui me permettent d'allumer et de stopper mon docker grâce à l'iPhone. 

 

Merci !

 

 

Pour ceux qui connaissent raccourcis iOS voici ce que j'ai mis, il se valide mais pas de réaction coté Docker.

Je pense qu'il lui faut valider le mot de passe de l'user après la commande, alors je me demande comment simuler dans mon script une " entrée " après la première ligne pour que je puisse mettre le mdp ensuite, mais je ne suis pas sur que cela marche. 

Si quelqu'un arrive à faire ça et puisse me partager l'astuce ça serais trop top ! 

 

 

IMG_925246F5A998-1.jpeg

Lien vers le commentaire
Partager sur d’autres sites

mouais mouais, c'est comme cela que marche linux mon brave ami.
Quand tu lance sudo, linux vérifie que tu es bien admin as bien le bon niveau de droit... donc te demande ton mot de passe.
si vraiment tu trouve cela génant logge toi en root en faisant "sudo -i" avant toutes les commandes que tu veux lancer, tu mets ton mdp une fois et c'est bon...
Mais attention à ne pas faire de conneries, la demande de le mot de passe permet aussi d'avoir un garde fou et d'éviter d'envoyer une commande trop vite. Après à toi de voir
 

Modifié par testadaz
precision
Lien vers le commentaire
Partager sur d’autres sites

Bonjour à tous.

Pour commencer merci pour ce superbe tuto.
J'ai pour habitude d'utiliser Docker directement sur un serveur Debian et à titre personnel chez moi sur Raspberry Pi 3 car le NAS que j'ai n'est pas compatible. Avec l'arrivée du 920+ de Syno je pense me laisser tenter et du coup j'aimerai basculer mes conteneurs du Raspberry Pi 3 vers le NAS cependant j'aurai quelques questions.

Est-ce que l'architecture des images est identique sur un NAS Syno à celle que l'on utilise sur un serveur Debian ? (ex : arm64, etc). Je sais que sur le Pi3 tout n'est pas compatible, je suis obligé de trouver des images spéciales et je ne peux pas forcément tout faire tourner dessus contrairement au mon serveur. J'aimerai pouvoir utiliser n'importe quel image dispo sur le Hub et la monter sur le NAS.
Autre question, est ce qu'il est possible de se connecter au NAS en SSH et d'utiliser docker-compose pour la création des conteneurs ? Dans le cas où ce serait possible, est-ce que les conteneurs sont visibles dans l'interface Docker de DSM ?
Est-il possible de mapper les volumes en dehors du NAS (sur un autre NAS par exemple) sans pour autant être obligé de lancer les conteneurs sous root comme j'ai pu voir dans le tuto pour sortir de /Volume1 ?

J'aurai surement d'autres questions mais pour l'instant je m'arrête là 😄

Merci d'avance pour vos réponses.

Lien vers le commentaire
Partager sur d’autres sites

Il y a 5 heures, DoDoceran a dit :

Est-ce que l'architecture des images est identique sur un NAS Syno à celle que l'on utilise sur un serveur Debian ? (ex : arm64, etc). Je sais que sur le Pi3 tout n'est pas compatible, je suis obligé de trouver des images spéciales et je ne peux pas forcément tout faire tourner dessus contrairement au mon serveur. J'aimerai pouvoir utiliser n'importe quel image dispo sur le Hub et la monter sur le NAS.

L'architecture n'est pas liée au software mais au hardware.
Par défaut quand tu télécharges une image, pour une écrasante majorité, tu n'as pas à préciser l'architecture, Docker détectera automatiquement ton type de processeur, donc l'architecture, et donc l'image à utiliser en conséquence.
Les NAS Syno compatibles Docker utilisent les images pour chipset x86_64.

Il y a 5 heures, DoDoceran a dit :

Autre question, est ce qu'il est possible de se connecter au NAS en SSH et d'utiliser docker-compose pour la création des conteneurs ?

J'en parle dans le tutoriel, je ne m'y attarde pas car il y aurait trop à dire. Le paquet Docker de DSM vient avec docker-compose. Et oui les conteneurs sont visibles dans l'interface de DSM.
Pour ma part je n'utilise que ça et Portainer pour la visualisation.

Il y a 5 heures, DoDoceran a dit :

Est-il possible de mapper les volumes en dehors du NAS (sur un autre NAS par exemple) sans pour autant être obligé de lancer les conteneurs sous root comme j'ai pu voir dans le tuto pour sortir de /Volume1 ?

Si tu montes des dossiers distants dans ton NAS, c'est dans /volume1 que ça se passe (si tu passes par File Station pour ça en tout cas). Tu n'as qu'à utiliser les dossiers montés dans tes volumes.

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

Hello

Est-ce que quelqu'un sait comment est géré les images Docker dans Synology ?

J'entends par là, quand on a téléchargé plusieurs versions, pour mettre à jour son container par exemple, est-ce que Docker supprime les anciennes images ?

J'ai l'impression que non, car en utilisant Portainer, j'ai trouvé des images "Unused", qui correspond donc aux anciennes images que j'ai utilisé.

Exemple

image.thumb.png.e6823061d42f2a85cd738f89fb6ae8cb.png

Mais du coup ça peut vite prendre de la place inutilement, et j'ai pas trouvé dans le package Docker comment voir / supprimer les anciennes. C'est possible ?

J'ai supprimé les images Unused via Portainer.

Et dernière question, où sont stockées les images et les containers ?

Merci 😉

 

Modifié par aware
Lien vers le commentaire
Partager sur d’autres sites

Si tu télécharges une image avec le tag latest, la suivante remplacera toujours la précédente.
Il arrive qu'il y ait des images "bancales" (dangling image), suite à une erreur durant un update, ou pendant son téléchargement, etc... dans ce cas-là ça donne ce que tu as sur ton écran.
Pour supprimer les images bancales, il faut taper :

docker image prune

Dans le paquet Docker dans DSM, je ne sais pas si on peut voir les images bancales.
Les supprimer via Portainer marche très bien aussi. 😉 

Pour l'emplacement des images c'est dans :

/volume1/@docker/image/btrfs/imagedb/content/sha256#

Mais une image est avant tout une succession de couches (layers), qui ont leur propre dossier.
Pour les conteneurs c'est dans :

/volume1/@docker/containers

 

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Bonjour @.Shad.,

en regardant un autre problème (monitoring Freebox), je m'aperçois que depuis l'interface DSM Docker, je n'ai plus accès au terminal de n'importe quel container Docker. La réponse est invariablement "socket fermé". Je ne sais pas dire depuis combien de temps, mais c'est curieux ?

image.png.d09a6a62c0c660510f525391247ab032.png

J'ai ce comportement pour tous mes dockers .... Le bouton "Créer" ne fait rien, ou alors demande "Lancer avec quelle commande ?" est alors là quoi lui dire .... ?

Si tu as des idées à partager ? (a priori je suis à jour sur tous les paquets et le DSM)

Merci, Bruno78

Lien vers le commentaire
Partager sur d’autres sites

Je viens de vérifier j'ai le même problème.
J'ai testé la même opération sur Portainer, et ça marche nickel :

ssh_telegraf.png.992541a035a72c338bf3d30c78f090a6.png

Donc un problème avec le paquet Docker DSM on dirait.
Normalement la commande à utiliser c'est /bin/bash si tu veux lancer un terminal. 😉 

EDIT : C'est uniquement sur Telegraf que j'ai ce problème, avec Pi-hole ça marche bien, donc Docker DSM n'est pas en cause, plutôt l'image de Telegraf.

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

@.Shad.,

c'est un peu plus problématique chez moi. A priori tous les dockers refusent cette connexion console, y compris Pihole qui lui est à jour (ce qui n'est pas forcement le cas des autres). Même pb avec Portainer (mais les container n'ont pas été installés avec Portainer, donc c'est peut-être normal ?) ....

Je pense que je vais commencer par mettre tous les containers à jour. Ensuite on verra. Pour le moment, le me contente de passer par un #docker exec -it <xxxxx> /bin/bash .... 

Modifié par bruno78
Lien vers le commentaire
Partager sur d’autres sites

@.Shad.,

bonjour, à propos du problème de terminal docker fermé "socket fermé", j'avais ce problème sur tous mes container Docker. Après quelques recherches, il semble que ce pourrait être dû à l'accès au DSM via ReverseProxy. Si j'accède au DSM simplement en local via son adresse IP, alors plus de problème, tous les terminaux sont fonctionnels. De toute façon, il reste toujours la solution via connexion ssh, mais sans expliquer le pourquoi, au moins le passage en connexion directe permet de contourner le problème. Techniquement parlant, je ne sais pas analyser la cause profonde ....

PS : pour tenter de résoudre ce problème, j'ai procédé à la mise à jour de tous mes Docker. Tout c'est bien passé, sauf pour le Docker Telegraf pour monitoring Freebox. En fait la mise à jour est ok vers un telegraf 1.5.2, mais ensuite l'installation de Python3 pose problème. Donc si vous faites du monitoring de votre Freebox via docker telegraf, ne mettez pas à jour votre docker Telegraf pour le moment. Restez dans votre version actuelle. Il faut que je regarde le problème plus en détail. Il semble y avoir eu des évolutions dans la (les ?) dernières versions du docker telegraf.

Lien vers le commentaire
Partager sur d’autres sites

@.Shad.,

  • oui tu as entierement raison. Même si pour le moment je ne sais pas trop comment faire cela, .... mais ce sera une bonne occasion d'apprendre
  • Pour le moment je me concentre pour restorer un docker fbx_telegraf opérationnel. Je suis en train de le regenerer avec une version telegraf 1.14.5, la ":latest" étant une 1.15.2
Lien vers le commentaire
Partager sur d’autres sites

@MilesTEG1,

image.thumb.png.e21991a79b38c4ab2da1b31112fca860.png

Et donc je confirme qu'avec la dernière version de la branche 1.14, càd telegraf:1.14.5, pas de problème pour installer Python pour le docker telegraf gérant la Freebox. Par contre ça plante si on passe sur la branche 1.15.x

Bruno78

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.