
jancubillan/webhook基于Rocky Linux构建的轻量级webhook服务镜像,集成adnanh/webhook工具,用于创建HTTP端点接收外部请求并触发预定义命令执行。默认配置支持热重载、详细日志输出,并通过hooks.json文件定义触发器规则。
bashdocker run -d \ --name=webhook \ -p 9000:9000 \ -v /path/to/local/config:/config \ jancubillan/webhook
yaml--- version: "2.1" services: webhook: image: jancubillan/webhook container_name: webhook environment: - PUID=1000 # 运行用户ID - PGID=1000 # 运行用户组ID - TZ=Asia/Singapore # 时区设置 volumes: - ./config-webhook:/config # 挂载配置目录(包含hooks.json) ports: - 9000:9000 # 端口映射 restart: unless-stopped command: -verbose -hooks=hooks.json -hotreload # 自定义启动参数 logging: driver: "json-file" options: max-file: "6" # 日志文件最大数量 max-size: "50m" # 单个日志文件大小限制
容器默认从/config/hooks.json加载webhook配置,需通过卷挂载自定义配置文件。配置示例:
json[ { "id": "simple-one", // webhook唯一标识(用于URL路径:/hooks/simple-one) "execute-command": "/path/to/command.sh", // 触发时执行的命令/脚本路径 "response-message": "Executing simple webhook...", // 响应客户端消息 "trigger-rule": { // 触发规则配置 "match": { "type": "value", // 匹配类型(value:值匹配) "value": "42", // 期望匹配的值 "parameter": { "source": "url", // 参数来源(url:URL查询参数) "name": "token" // 参数名称(如URL中的?token=42) } } } } ]
webhook请求URL格式:
http://<容器IP或域名>:9000/hooks/<webhook-id>?<参数名>=<参数值>
示例(对应上述hooks.json配置):
[***]
默认启动命令:webhook -verbose -hotreload -hooks=hooks.json
可通过command覆盖默认参数,常用参数:
-verbose:启用详细日志输出-hotreload:启用配置热重载(hooks.json更新后自动加载)-hooks=<文件路径>:指定hooks配置文件路径(默认:hooks.json)-port=<端口号>:自定义监听端口(默认:9000)-address=<地址>:指定绑定地址(默认:0.0.0.0)/config:配置文件目录,需挂载包含hooks.json的本地目录,同时可存放执行脚本(如command.sh)


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务