
Contrôleur Docker Compose basé sur Webhook
Initiez ou résiliez les services Docker Compose sur votre serveur via une requête HTTP POST sécurisée à l'aide de n8n et SSH.
Comment ça marche
Le flux de travail intitulé « Webhook-Based Docker Compose Controller » est conçu pour gérer les services Docker Compose sur un serveur via des requêtes HTTP POST sécurisées. Le flux de travail commence par un nœud
Webhook
, qui écoute les requêtes HTTP POST entrantes. Lorsqu'une requête est reçue, elle capture les données envoyées dans le corps de la requête, qui comprend généralement des paramètres indiquant s'il faut démarrer ou arrêter un service Docker spécifique.Après le nœud Webhook, le workflow utilise un nœud
Set
pour structurer les données entrantes. Ce nœud extrait les informations pertinentes de la demande de webhook, telles que l'action (démarrage ou arrêt) et le nom du service. La sortie du nœud Set est ensuite transmise à un nœudFunction
, qui contient du code JavaScript personnalisé qui détermine la commande appropriée à exécuter en fonction de l'action spécifiée dans la requête.Ensuite, le workflow inclut un nœud
SSH
, qui est configuré pour se connecter au serveur sur lequel les services Docker Compose sont hébergés. Ce nœud exécute la commande générée par le nœud Fonction. En fonction de l'action reçue, le nœud SSH démarrera ou arrêtera le service Docker spécifié à l'aide de la commande Docker Compose appropriée.Enfin, le workflow se termine par un nœud
Répondre au Webhook
, qui renvoie une réponse au client qui a initié la demande. Cette réponse confirme si l'action demandée a été exécutée avec succès ou s'il y a eu des erreurs.Principales fonctionnalités
1. Webhook Trigger :
le flux de travail démarre avec un nœud Webhook, ce qui lui permet d'être déclenché par des requêtes HTTP POST externes, ce qui le rend adapté à l'intégration avec diverses applications et services.
2. Exécution de commandes dynamiques :
l'utilisation d'un nœud de fonction permet la génération de commandes dynamiques basées sur les paramètres d'entrée, permettant une gestion flexible des services Docker.
3. Intégration SSH :
le nœud SSH facilite l'exécution à distance sécurisée des commandes sur le serveur, garantissant ainsi que les services Docker peuvent être gérés sans exposer le serveur directement à Internet.
4. Gestion des services :
le workflow peut démarrer ou arrêter n'importe quel service Docker Compose, fournissant une interface simple pour le contrôle des services via des requêtes Web.
5. Gestion des réponses :
le flux de travail comprend un mécanisme pour répondre à la demande de webhook, fournissant des commentaires sur le succès ou l'échec de la commande exécutée, ce qui est essentiel pour le débogage et l'expérience utilisateur.
Intégration d'outils
- n8n Webhook Node :
capture les requêtes HTTP POST entrantes.
- n8n Set Node :
structure et extrait les données de la requête entrante.
- Nœud de fonction n8n :
exécute du code JavaScript personnalisé pour déterminer la commande en fonction de la requête.
- n8n SSH Node :
se connecte à un serveur distant pour exécuter les commandes Docker Compose.
- n8n Répondre au nœud Webhook :
renvoie une réponse au demandeur.
Clés API requises
Aucune clé API ou identifiant d'authentification n'est requis pour que ce flux de travail fonctionne. Cependant, un accès SSH au serveur sur lequel Docker Compose est exécuté est nécessaire, ce qui peut impliquer la configuration de clés ou d'informations d'identification SSH pour une connexion sécurisée.
