Zurück zur Liste
Webhook-basierter Docker Compose Controller

Webhook-basierter Docker Compose Controller

SSH Tools

Initiieren oder beenden Sie Docker Compose-Dienste auf Ihrem Server über eine sichere HTTP-POST-Anfrage mit n8n und SSH.

Wie es funktioniert


Der Workflow mit dem Titel „Webhook-basierter Docker Compose Controller“ dient zur Verwaltung von Docker Compose-Diensten auf einem Server über sichere HTTP-POST-Anfragen. Der Workflow beginnt mit einem

Webhook

-Knoten, der auf eingehende HTTP-POST-Anfragen lauscht. Wenn eine Anfrage empfangen wird, werden die im Anfragetext gesendeten Daten erfasst, die normalerweise Parameter enthalten, die angeben, ob ein bestimmter Docker-Dienst gestartet oder gestoppt werden soll.
Im Anschluss an den Webhook-Knoten verwendet der Workflow einen

Set

-Knoten, um die eingehenden Daten zu strukturieren. Dieser Knoten extrahiert relevante Informationen aus der Webhook-Anfrage, beispielsweise die Aktion (Start oder Stopp) und den Dienstnamen. Die Ausgabe des Set-Knotens wird dann an einen

Function

-Knoten übergeben, der benutzerdefinierten JavaScript-Code enthält, der den entsprechenden auszuführenden Befehl basierend auf der in der Anforderung angegebenen Aktion bestimmt.
Als Nächstes umfasst der Workflow einen

SSH

-Knoten, der für die Verbindung mit dem Server konfiguriert ist, auf dem die Docker Compose-Dienste gehostet werden. Dieser Knoten führt den vom Funktionsknoten generierten Befehl aus. Abhängig von der empfangenen Aktion startet oder stoppt der SSH-Knoten den angegebenen Docker-Dienst mithilfe des entsprechenden Docker Compose-Befehls.
Schließlich endet der Workflow mit einem

Respond to Webhook

-Knoten, der eine Antwort an den Client zurücksendet, der die Anfrage initiiert hat. Diese Antwort bestätigt, ob die angeforderte Aktion erfolgreich ausgeführt wurde oder ob Fehler aufgetreten sind.

Hauptmerkmale


1. Webhook-Trigger:

Der Workflow beginnt mit einem Webhook-Knoten, sodass er durch externe HTTP-POST-Anfragen ausgelöst werden kann, wodurch er für die Integration mit verschiedenen Anwendungen und Diensten geeignet ist.

2. Dynamische Befehlsausführung:

Die Verwendung eines Funktionsknotens ermöglicht die dynamische Befehlsgenerierung basierend auf den Eingabeparametern und ermöglicht so eine flexible Verwaltung von Docker-Diensten.

3. SSH-Integration:

Der SSH-Knoten ermöglicht die sichere Remote-Ausführung von Befehlen auf dem Server und stellt so sicher, dass Docker-Dienste verwaltet werden können, ohne dass der Server direkt dem Internet ausgesetzt ist.

4. Dienstverwaltung:

Der Workflow kann jeden Docker Compose-Dienst starten oder stoppen und bietet so eine einfache Schnittstelle für die Dienststeuerung über Webanfragen.

5. Antwortverarbeitung:

Der Workflow umfasst einen Mechanismus, um auf die Webhook-Anfrage zu reagieren und Feedback zum Erfolg oder Misserfolg des ausgeführten Befehls zu geben, was für das Debuggen und die Benutzererfahrung unerlässlich ist.


Tools-Integration


- n8n Webhook-Knoten:

Erfasst eingehende HTTP-POST-Anfragen.

- n8n Set Node:

Strukturiert und extrahiert Daten aus der eingehenden Anfrage.

- n8n-Funktionsknoten:

Führt benutzerdefinierten JavaScript-Code aus, um den Befehl basierend auf der Anfrage zu bestimmen.

- n8n SSH-Knoten:

Stellt eine Verbindung zu einem Remote-Server her, um Docker Compose-Befehle auszuführen.

- n8n Respond to Webhook Node:

Sendet eine Antwort zurück an den Anforderer.


API-Schlüssel erforderlich


Für die Funktion dieses Workflows sind keine API-Schlüssel oder Authentifizierungsdaten erforderlich. Allerdings ist ein SSH-Zugriff auf den Server erforderlich, auf dem Docker Compose ausgeführt wird, was möglicherweise die Einrichtung von SSH-Schlüsseln oder Anmeldeinformationen für eine sichere Verbindung erfordert.

Webhook-basierter Docker Compose Controller