返回列表
基于 Webhook 的 Docker Compose 控制器

基于 Webhook 的 Docker Compose 控制器

SSH Tools

使用 n8n 和 SSH 通过安全 HTTP POST 请求启动或终止服务器上的 Docker Compose 服务。

它是如何运作的


标题为“基于 Webhook 的 Docker Compose 控制器”的工作流程旨在通过安全的 HTTP POST 请求管理服务器上的 Docker Compose 服务。该工作流从

Webhook

节点开始,该节点侦听传入的 HTTP POST 请求。当收到请求时,它会捕获请求正文中发送的数据,其中通常包括指示是否启动或停止特定 Docker 服务的参数。
在 Webhook 节点之后,工作流利用

Set

节点来构建传入数据。该节点从 webhook 请求中提取相关信息,例如操作(启动或停止)和服务名称。然后,Set 节点的输出将传递到

Function

节点,该节点包含自定义 JavaScript 代码,该代码根据请求中指定的操作确定要执行的适当命令。
接下来,工作流包括一个

SSH

节点,该节点配置为连接到托管 Docker Compose 服务的服务器。该节点执行 Function 节点生成的命令。根据收到的操作,SSH 节点将使用适当的 Docker Compose 命令启动或停止指定的 Docker 服务。
最后,工作流程以

响应 Webhook

节点结束,该节点将响应发送回发起请求的客户端。此响应确认请求的操作是否已成功执行或是否存在任何错误。

主要特点


1. Webhook触发器

:工作流程以Webhook节点开始,允许其被外部HTTP POST请求触发,使其适合与各种应用程序和服务集成。

2. 动态命令执行

:使用Function节点可以根据输入参数动态生成命令,实现对Docker服务的灵活管理。

3. SSH集成

:SSH节点有助于在服务器上安全地远程执行命令,确保可以在不将服务器直接暴露到互联网的情况下管理Docker服务。

4. 服务管理

:工作流可以启动或停止任何 Docker Compose 服务,为通过 Web 请求进行服务控制提供简单的界面。

5. 响应处理

:工作流包括响应 webhook 请求的机制,提供有关执行命令成功或失败的反馈,这对于调试和用户体验至关重要。


工具集成


- n8n Webhook 节点

:捕获传入的 HTTP POST 请求。

- n8n 设置节点

:从传入请求中构建和提取数据。

- n8n 函数节点

:执行自定义 JavaScript 代码以根据请求确定命令。

- n8n SSH 节点

:连接到远程服务器以执行 Docker Compose 命令。

- n8n 响应 Webhook 节点

:将响应发送回请求者。


需要 API 密钥


此工作流程无需 API 密钥或身份验证凭据即可运行。但是,需要通过 SSH 访问运行 Docker Compose 的服务器,这可能涉及设置 SSH 密钥或凭据以进行安全连接。

基于 Webhook 的 Docker Compose 控制器