# Watchtower 接入 Server酱：容器自动更新后推送到微信（2026 教程）

> 通过 shoutrrr generic webhook 将 Watchtower 的 Docker 容器更新结果推送到微信，配置 WATCHTOWER_NOTIFICATION_URL 即可。

- 网页版：https://sct.ftqq.com/docs/integrations/watchtower/
- 更新日期：2026-07-17

# Watchtower + Server酱：容器自动更新后推送到微信

> 效果：Watchtower 每次检查并更新 Docker 容器后，自动把更新结果发送到你的微信。

## 前置条件

- Server酱 SendKey（[30 秒获取教程](https://sct.ftqq.com/docs/getting-started/sendkey/)）
- 已安装 Docker 并运行 Watchtower 容器
- 如需推送到企业微信/钉钉/飞书群，参阅[通道配置](https://sct.ftqq.com/docs/getting-started/channels/)

## 配置步骤

### 1. 设置通知 URL

Watchtower 的通知通过 shoutrrr 发送。将 `WATCHTOWER_NOTIFICATION_URL` 环境变量设为以下值（固定标题）：

```
generic://sctapi.ftqq.com/你的SENDKEY.send?title=Watchtower%E6%9B%B4%E6%96%B0
```

`title` 中的中文已做 URL 编码（`%E6%9B%B4%E6%96%B0` = "更新"）。

如需通知中包含更新详情，可以通过 shoutrrr 的模板变量将消息内容传入 `desp` 参数，具体语法请参考 shoutrrr 文档。

> Server酱³ 用户：将 generic URL 中的域名和路径替换为 `你的UID.push.ft07.com/send/你的SENDKEY.send`。

### 2. 通过 docker run 启动

```bash
docker run -d \
  --name watchtower \
  -e WATCHTOWER_NOTIFICATION_URL='generic://sctapi.ftqq.com/你的SENDKEY.send?title=Watchtower%E6%9B%B4%E6%96%B0' \
  -v /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower
```

URL 用单引号包裹，防止 shell 解析 `&` 和 `{{ }}`。

### 3. 通过 docker-compose 启动

```yaml
services:
  watchtower:
    image: containrrr/watchtower
    environment:
      - "WATCHTOWER_NOTIFICATION_URL=generic://sctapi.ftqq.com/你的SENDKEY.send?title=Watchtower%E6%9B%B4%E6%96%B0"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    restart: unless-stopped
```

`docker compose up -d` 后，Watchtower 每次检查更新都会通过 Server酱 推送消息到微信。将 `你的SENDKEY` 替换为实际 SendKey 即可。

## 常见问题

**免费额度够用吗？**

免费版每天 5 条，Watchtower 检查频率通常较低，免费额度一般够用。如需更频繁的检查，订阅会员目前特价最低 3 元/月，一天最多可发 1000 条（[价格详情](https://sct.ftqq.com/subscribe)）。

**消息没收到怎么办？**

先检查 SendKey 是否正确、容器日志中是否有通知发送记录（`docker logs watchtower`），再参考[常见问题与排查](https://sct.ftqq.com/docs/getting-started/faq/)。

**频率限制是多少？**

每分钟最多 50 条请求。每次检查产生的通知数量有限，不易触发限制。

**支持 Server酱³ 吗？**

支持。将 generic URL 中的域名和路径替换为 `你的UID.push.ft07.com/send/你的SENDKEY.send` 即可，SendKey 以 `sctp` 开头。

## 相关集成

- [Uptime Kuma 宕机告警](https://sct.ftqq.com/docs/integrations/uptime-kuma/)
- [青龙面板任务通知](https://sct.ftqq.com/docs/integrations/qinglong/)
- [Python 脚本推送](https://sct.ftqq.com/docs/integrations/python/)


## 懒人方案：把这段话复制给你的 AI 助手

把下面这段文字原样粘贴给 Claude Code、Cursor 或任何 AI 编程助手，它就会替你完成 Server酱 的接入：

```text
请帮我把 Server酱 微信通知接入到我当前的项目/工具中：
1. API：POST https://sctapi.ftqq.com/{SendKey}.send，参数 title（必填，不能含换行）、desp（正文，支持 Markdown，可选）；成功时返回 JSON 的 code 为 0。
2. 如果我的 SendKey 以 sctp 开头，则改用 https://{uid}.push.ft07.com/send/{SendKey}.send，uid 是 SendKey 中 sctp 与 t 之间的数字。
3. SendKey 从环境变量 SERVERCHAN_SENDKEY 读取；如果没有，提醒我到 https://sct.ftqq.com 免费获取（每天 5 条额度）。
4. 安全要求：不要把 SendKey 硬编码进代码、不要打印到日志、不要提交到 git。
5. 频率约定：任务结束发 1 条结果摘要即可，批量任务合并成一条，不要每步都推。
请根据我当前的项目和场景直接写好代码/配置并验证。
```

