[Plugin Tiers] Plugin Docker

Bonsoir @Tag!
j’espère que le déménagement c’est bien passé avec tous les aléas des derniers temps!

Pour répondre, voici le visu de l’équipement sur le dashboard:
image

j’ai bien mis linux dans mon host et même supprimé/remis le container

Voici le log d’un refresh container

[2020-04-20 21:12:21][INFO] : ========================================================
[2020-04-20 21:12:21][INFO] : ================== Début du log execute ================
[2020-04-20 21:12:21][INFO] : ========================================================
[2020-04-20 21:12:21][DEBUG] : On est dans le case refresh de la class dockerCmd
[2020-04-20 21:12:21][DEBUG] : C'est un container que l'on va mettre à jour
[2020-04-20 21:12:21][INFO] : ========================================================
[2020-04-20 21:12:21][INFO] : ======== Début du log getContainerInformation ==========
[2020-04-20 21:12:21][INFO] : ========================================================
[2020-04-20 21:12:21][DEBUG] : DEBUT DU IF
[2020-04-20 21:12:21][DEBUG] : Login utilisé : ******** - Ip du docker : ********* - Port SSH du docker : 22 - Nom :  - Type : linux
[2020-04-20 21:12:22][INFO] : Docker joignable
[2020-04-20 21:12:22][INFO] : Connexion OK au Docker
[2020-04-20 21:12:22][DEBUG] : Valeur de l'ID en cours de traitement *******************
[2020-04-20 21:12:22][DEBUG] : On appelle la commande qui récupère le nom du container
[2020-04-20 21:12:22][DEBUG] : valeur de la variable dockerName ******
[2020-04-20 21:12:22][DEBUG] : On appelle la commande qui récupère l'état du container (allumé/éteint/pause)
[2020-04-20 21:12:22][DEBUG] : valeur de la variable status running
[2020-04-20 21:12:22][DEBUG] : On appelle la commande qui récupère l'état du container au format binaire (true/false)
[2020-04-20 21:12:23][DEBUG] : valeur de la variable onlineBinary true
[2020-04-20 21:12:23][DEBUG] : valeur de la variable onlineBinaryTreated 1
[2020-04-20 21:12:23][DEBUG] : On appelle la commande qui récupère le nom de l'image du container
[2020-04-20 21:12:23][DEBUG] : valeur de la variable sourceImage dev******
[2020-04-20 21:12:23][DEBUG] : On appelle la commande qui récupère l'état de santé du container
[2020-04-20 21:12:23][DEBUG] : valeur de la variable health bash: jq: command not found
[2020-04-20 21:12:23][DEBUG] : On appelle la commande qui récupère la date du dernier démarrage du container
[2020-04-20 21:12:23][DEBUG] : valeur de la variable bootTime Template parsing error: template: :1:8: executing "" at <.State.StartedTs>: map has no entry for key "StartedTs"
[2020-04-20 21:12:23][DEBUG] : valeur de la variable humanBootTime
[2020-04-20 21:12:23][DEBUG] : valeur de la variable uptimeSeconds 1587409943
[2020-04-20 21:12:23][DEBUG] : valeur de la requete sudo docker stats --no-stream --format "{{.Name}}::{{.CPUPerc}}::{{.MemPerc}}" *******************
[2020-04-20 21:12:25][DEBUG] : valeur de la variable containersStats
[2020-04-20 21:12:25][DEBUG] : Contenu des variables containerStatsArray[0] : ****** -- containerStatsArray[1] : 0.10% -- containerStatsArray[2] : 17.76%
[2020-04-20 21:12:26][INFO] : Fin fonction execute

je comprends la démarche pour les containers/hosts pas de soucis, on joue pas tous les jours à supprimer et remettre de toute manière :wink:

jeedom 3.3.47 + plugin docker MAJ tout à l’heure

voilà pour les news, n’hésitez pas si je peux aider en test ou autre :wink:

Hello,

Ok, donc pas de pet supplémentaires.
La partie hôte docker dans l’équipement c’est bien réglé ?

La version bêta date de fin janvier.
Donc il n’y a rien pour la partie startedAt par exemple.

Ça sera ma prochaine action avec l’id trop long.
À la base je l’ai mis pour un besoin x ou y que vous pourriez avoir.

Par contre je vais regarder si je peux avoir l’id plus court sur une autre commande ( c’est simple, je tronque l’id complet).
Ou si je peut afficher en utilisant l’id complet jusqu’à x caractères.

Par contre la santé pose également problème car tu n’as pas jq sur ton système.
De mémoire je m’en sers pour la découpe.

PS : le déménagement c’est pas simple mais on s’adapte oui ;)!

Merci pour ton retour.

Et oui, si besoin je te fais signe sans problème

Merci

oui l’hôte est bien réglé

Effectivement, sur le serv il y a le minimum en général.
Mais même sans ça, il faut utiliser healthcheck pour avoir accès à cette info dans le docker inspect, donc j’ai pas pu donner de commande équivalente en awk/sed car je ne l’utilise pas. il faudrait tester avec l’argument -f de docker inspect qui fait bien le taff en général. Cas à prévoir, donc :wink:

Bonne continuation, prends ton temps pour bien t’installer, le principal fonctionne dans mon cas y’a plus urgent :smiley:

Bonjour

Ce plugin, install docker ou c’est juste une interface avec un docker déjà installé ?

Merci

Hello,
le plugin docker permet de faire du monitoring, il contact l’hôte en ssh pour récupérer les infos, donc il n’y a pas de dépendances.
voir doc ici pour mieux comprendre son rôle

https://taggou91.github.io/jeedom_docs/plugins/docker/fr_FR/

Ok merci pour la réponse

Merci @ddelec24 pour avoir répondu à @Nemeraud !

Bonne soirée

Hello @TaG!
je voulais faire un check sur un serv qui a eu un soucis semaine dernière, et là je viens de me rendre compte que la date de dernier démarrage n’est pas implantée :sweat_smile: :laughing:

c’est le même soucis que j’avais signalé l’année dernière

direct depuis le serv

docker inspect 43afe66fcbd | grep Start                                                                                                                                  
 "StartedAt": "2021-02-16T12:06:28.344614662Z"

au lieu de startedTs qu’on voit dans le debug j’ai cette date ci mais reste du formatage à faire je pense

voilà ma modif:

			$request = $cmdToCall." inspect  --format='{{.State.StartedAt}}' ".$ID ."";
			$result = ssh2_exec($connection, $request . ' 2>&1');
			stream_set_blocking($result, true);
			$bootTime = stream_get_contents($result);
			$bootTime = trim($bootTime);
    	    $humanBootTime = DateTime::createFromFormat('Y-m-d\TH:i:s.uv\Z', $bootTime); // exemple de date récupérée: 2021-02-16T12:06:28.344614662Z
			$humanBootTime = $humanBootTime->format('d/m/Y H:i:s');

merci :wink:

Rpi3b+ / debian 10 / jeedom 4.1.20 / plugin docker à jour

Hello @ddelec24

Je regarde d’ici peu pour basculer sur le startedAT

1 « J'aime »

@ddelec24

J’ai fais la modification, je viens de valider de mon côté sans soucis.
C’est poussé en beta, changelog à jour.
Il faut attendre que le market la propose, surement demain.

Merci pour le formatage de la date, ça m’a fait gagner du temps :).

1 « J'aime »

Mise à jour du plugin en stable pour demain.

Correction comme indiqué au dessus, ainsi que la correction pour la compatibilité des images pour être en cohérence avec la V4.2 du core de Jeedom

1 « J'aime »