
Controlador Docker Compose basado en Webhook
Inicie o finalice los servicios de Docker Compose en su servidor a través de una solicitud HTTP POST segura utilizando n8n y SSH.
Cómo funciona
El flujo de trabajo titulado "Controlador Docker Compose basado en Webhook" está diseñado para administrar los servicios Docker Compose en un servidor a través de solicitudes HTTP POST seguras. El flujo de trabajo comienza con un nodo
Webhook
, que escucha las solicitudes HTTP POST entrantes. Cuando se recibe una solicitud, captura los datos enviados en el cuerpo de la solicitud, que generalmente incluye parámetros que indican si se debe iniciar o detener un servicio Docker específico.Después del nodo Webhook, el flujo de trabajo utiliza un nodo
Establecer
para estructurar los datos entrantes. Este nodo extrae información relevante de la solicitud del webhook, como la acción (iniciar o detener) y el nombre del servicio. Luego, la salida del nodo Set se pasa a un nodoFunción
, que contiene código JavaScript personalizado que determina el comando apropiado para ejecutar en función de la acción especificada en la solicitud.A continuación, el flujo de trabajo incluye un nodo
SSH
, que está configurado para conectarse al servidor donde se alojan los servicios de Docker Compose. Este nodo ejecuta el comando generado por el nodo Función. Dependiendo de la acción recibida, el nodo SSH iniciará o detendrá el servicio Docker especificado utilizando el comando Docker Compose apropiado.Finalmente, el flujo de trabajo concluye con un nodo
Responder al webhook
, que envía una respuesta al cliente que inició la solicitud. Esta respuesta confirma si la acción solicitada se ejecutó exitosamente o si hubo algún error.Características clave
1. Disparador de Webhook:
el flujo de trabajo comienza con un nodo Webhook, lo que permite que se active mediante solicitudes HTTP POST externas, lo que lo hace adecuado para la integración con diversas aplicaciones y servicios.
2. Ejecución dinámica de comandos:
el uso de un nodo Función permite la generación dinámica de comandos basados en los parámetros de entrada, lo que permite una gestión flexible de los servicios Docker.
3. Integración SSH:
el nodo SSH facilita la ejecución remota segura de comandos en el servidor, lo que garantiza que los servicios Docker se puedan administrar sin exponer el servidor directamente a Internet.
4. Gestión de servicios:
el flujo de trabajo puede iniciar o detener cualquier servicio Docker Compose, proporcionando una interfaz sencilla para el control del servicio a través de solicitudes web.
5. Manejo de respuestas:
el flujo de trabajo incluye un mecanismo para responder a la solicitud de webhook, proporcionando retroalimentación sobre el éxito o el fracaso del comando ejecutado, lo cual es esencial para la depuración y la experiencia del usuario.
Integración de herramientas
- n8n Webhook Node:
captura solicitudes HTTP POST entrantes.
- n8n Set Node:
estructura y extrae datos de la solicitud entrante.
- Nodo de función n8n:
ejecuta código JavaScript personalizado para determinar el comando según la solicitud.
- n8n SSH Node:
se conecta a un servidor remoto para ejecutar comandos de Docker Compose.
- n8n Responder al nodo Webhook:
envía una respuesta al solicitante.
Se requieren claves API
No se requieren claves API ni credenciales de autenticación para que este flujo de trabajo funcione. Sin embargo, es necesario el acceso SSH al servidor donde se ejecuta Docker Compose, lo que puede implicar la configuración de claves o credenciales SSH para una conexión segura.
