
almir/webhookalmir/webhook 是 webhook 工具的 Docker 化版本。webhook 是一个轻量级 HTTP 回调服务器,可接收 HTTP 请求并触发预定义的命令或脚本。本镜像提供了 webhook 的容器化部署方案,简化了工具的安装、配置与运行流程。
适用于开发、测试及生产环境中需要轻量级 HTTP 回调处理的场景,尤其适合资源受限或需快速部署的环境。
通过挂载宿主机钩子配置文件目录,直接启动容器:
shelldocker run -d \ -p 9000:9000 \ -v /宿主机钩子文件目录:/etc/webhook \ --name=webhook \ almir/webhook \ -verbose -hooks=/etc/webhook/hooks.json -hotreload
参数说明:
-p 9000:9000:映射容器端口 9000(webhook 默认端口)到宿主机-v /宿主机钩子文件目录:/etc/webhook:挂载宿主机钩子配置文件目录到容器内 /etc/webhook--name=webhook:指定容器名称-verbose(输出详细日志)、-hooks=/etc/webhook/hooks.json(指定钩子配置文件路径)、-hotreload(启用配置热重载)若需将钩子配置文件内置到镜像中,可通过 Dockerfile 构建自定义镜像:
dockerfileFROM almir/webhook COPY hooks.json /etc/webhook/hooks.json # 将宿主机 hooks.json 复制到容器内指定路径
将 Dockerfile 与 hooks.json 置于同一目录,执行以下命令:
shell# 构建镜像 docker build -t my-webhook-image . # 启动容器 docker run -d \ -p 9000:9000 \ --name=webhook \ my-webhook-image \ -verbose -hooks=/etc/webhook/hooks.json -hotreload
通过 CMD 指令在 Dockerfile 中预定义启动参数,简化容器启动命令:
dockerfileFROM almir/webhook COPY hooks.json /etc/webhook/hooks.json CMD ["-verbose", "-hooks=/etc/webhook/hooks.json", "-hotreload"] # 预定义启动参数
shell# 构建镜像 docker build -t my-webhook-image . # 启动容器(无需额外指定参数) docker run -d -p 9000:9000 --name=webhook my-webhook-image
webhook 启动参数可通过容器启动命令或 Dockerfile 的 CMD 指定,常用参数如下:
| 参数 | 说明 |
|---|---|
-verbose | 启用详细日志模式,输出请求处理、命令执行等详细信息 |
-hooks=<path> | 指定钩子配置文件路径(如 /etc/webhook/hooks.json) |
-hotreload | 启用配置热重载,当钩子配置文件变更时自动重新加载,无需重启容器 |
-port=<port> | 指定 HTTP 服务端口(默认 9000),如需修改端口需同步调整容器端口映射 |
创建 docker-compose.yml 文件,定义服务配置:
yamlversion: '3' services: webhook: image: almir/webhook container_name: webhook ports: - "9000:9000" volumes: - ./hooks:/etc/webhook # 挂载宿主机 ./hooks 目录到容器内 /etc/webhook command: ["-verbose", "-hooks=/etc/webhook/hooks.json", "-hotreload"] restart: unless-stopped # 容器退出时自动重启(除非手动停止)
启动服务:
shelldocker-compose up -d



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