Gloridust/WechatOnCloud · 上手攻略
- 仓库:Gloridust/WechatOnCloud
- 链接:https://github.com/Gloridust/WechatOnCloud
- 分类:devops · selfhosted · social
- 作者:Tom
- 更新:2026-08-09
是什么
WechatOnCloud(WOC,云微)是一个开源的"服务端微信"解决方案:在飞牛 NAS(fnOS)或任意 Docker 主机上,以容器方式运行微信 Linux 原生版,通过 Web 界面(KasmVNC 串流)供多个用户浏览器共享同一个微信会话,同时支持 Chrome 浏览器实例登录 Telegram / X / Instagram 等网页应用。
一句话定位:把微信和网页版社媒搬上私有云,多设备浏览器共享同一登录态。
GitHub 星标 3511(截至 2026-08-09,周增 +21)。当前版本 v1.4.9,支持 amd64 / arm64 双架构,Docker Hub + GHCR 双镜像源。
⚠️ 安全重要提醒:运行的是已登录微信,任何能访问该端口的人都能看到全部聊天记录并以你的身份发消息。严禁将面板暴露公网;远程访问必须走 VPN / 内网穿透 + TLS。
解决什么问题
痛点 1:微信桌面端同一账号同时只能有一个设备在线;换设备就需重新扫码,多人协作场景无法共享同一会话。
痛点 2:NAS 用户想在服务器上常驻微信,但不想开一台独立 VM(资源开销大、脆弱、难维护)。
痛点 3:在飞牛 OS 这类轻量 NAS 上运行带 GUI 的微信,虚拟显示 + 串流是比 VM 更轻量的解法。
解决:每个实例 = 一个独立 Docker 容器,跑 Xvfb 虚拟显示 + 微信 Linux 原生版 + KasmVNC;面板(woc-panel)作为唯一对外入口,经 docker.sock 管理容器生命周期;多浏览器用户通过 Web 连接同一个实例,实现跨设备同步、多端共享。
快速安装
前提条件
- Docker(含 Compose 插件)
- x86_64 或 arm64 架构
- 约 2-4 GB 可用磁盘空间(微信约 190-210 MB)
⚠️ 不熟悉 Docker?先读 运行原理与 Docker 指南。
方式 A:一条命令部署(推荐)
# 1. 创建空目录并进入
mkdir woc && cd woc
# 2. 下载官方 docker-compose.yml
curl -fsSL https://raw.githubusercontent.com/Gloridust/WechatOnCloud/main/docker-compose.yml -o docker-compose.yml
# 3. 修改默认密码(强烈建议,至少改 WOC_PASSWORD)
# 方式一:创建 .env 文件
cp .env.example .env # 从 https://github.com/Gloridust/WechatOnCloud/blob/main/.env.example 获取
# 编辑 .env,改 WOC_PASSWORD 为强密码
# 4. 启动
docker compose up -d
# 5. 访问面板
# 浏览器打开 http://<NAS_IP>:36080
# 默认账号 admin / wechat,登录后立即改密码
方式 B:飞牛 OS(fnOS)/ 群晖 NAS 可视化部署
- 在 NAS Docker 管理界面找到「Compose 部署」选项
- 将
docker-compose.yml全文粘贴进去 - 填入环境变量(WOC_PASSWORD 等)
- 点击部署,无需命令行
方式 C:本地自构建(官方镜像未发布时用)
git clone https://github.com/Gloridust/WechatOnCloud.git
cd WechatOnCloud
cp .env.example .env # 修改 WOC_PASSWORD 等
./scripts/build-local.sh
docker compose up -d
⚠️ NAS 用户首次建实例卡住的解决方案:
Docker Hub 加速通常只覆盖 NAS 界面手动拉取,不覆盖面板经 docker.sock 触发的拉取,导致实例镜像拉取超时(timeout)。
最省事解法:先在 NAS Docker → 镜像 → 拉取 里手动拉一次 gloridust/wechat-on-cloud:latest,镜像到本地后面板新建实例直接复用,不再联网拉取。
核心用法
新建第一个微信实例
1. 浏览器访问 http://<NAS_IP>:36080 ,用 admin/wechat 登录
2. 进入「实例」页 → 点击「新建实例」
3. 选「应用类型」:微信 或 Chromium 浏览器
4. 填实例名称(如 "我的微信")
5. 勾选可访问的子账号(默认 admin 全权限)
6. 点「创建」→ 面板自动 docker run 起实例容器
7. (微信实例)点「下载并安装微信」→ 约 190-210 MB,带进度条
8. 微信安装完成后,点「进入实例」→ 扫码登录
新建浏览器实例(登录 Telegram/X/Instagram 等)
1. 新建实例时选「Chromium 浏览器」(Chromium 已烤进镜像,无需下载)
2. 点「进入实例」→ 直接打开 Chromium
3. 在 Chromium 里正常登录 Telegram Web / X.com 等
4. 登录态写入数据卷 /config,容器重启保留
文件传输
- 上传:拖拽文件到实例窗口,直接放到
~/Desktop - 下载:在实例内选中文件,点工具栏下载
- 剪贴板中转:本地复制 → 工具栏粘贴按钮 → 文字进入实例
⚠️ 剪贴板中转在局域网 HTTP 下可用;公网建议配合 TLS。
实例升级
面板内点「检查更新」→「一键升级全部实例」
(拉新镜像 + 重建容器 + 保留数据卷 → 聊天记录不丢)
常用配置项(.env)
| 变量 | 默认值 | 说明 |
|---|---|---|
WOC_PASSWORD |
wechat |
面板管理员密码,部署即改 |
WOC_HTTP_PORT |
36080 |
面板 HTTP 端口 |
WOC_IMAGE_PREFIX |
gloridust |
镜像前缀,换源用 |
PANEL_ALLOWED_HOSTS |
空 | 允哪些 Host 访问,解决部分 DNS-Rebinding 拦截 |
镜像源切换(拉不动时):
# 换 GHCR
WOC_IMAGE_PREFIX=ghcr.io/gloridust docker compose up -d
# 换南京大学镜像(国内可达)
WOC_IMAGE_PREFIX=ghcr.nju.edu.cn/gloridust docker compose up -d
典型适用场景
| 场景 | 说明 |
|---|---|
| 家庭/团队微信共享 | 多成员浏览器访问同一微信账号,无需每个人都登录 |
| NAS 常驻微信 | 服务器上 24 小时运行,换设备不丢会话 |
| 网页版社媒多端同步 | Telegram/X/Instagram 常驻云端,跨设备无缝衔接 |
| 飞牛 fnOS 用户 | 原生支持 docker-compose,可视化部署门槛低 |
| 无头服务器微信管理 | 无 GUI 的 Linux 服务器跑微信,非 VM 方案 |
架构原理
┌─────────────────────────────────────────────┐
│ Docker 容器 (Debian base, amd64/arm64) │
│ │
│ 微信 Linux 原生版 4.0(官方 .deb,按架构自选)│
│ ↓ 渲染到 │
│ Xvfb 虚拟显示 :99 + openbox 轻量窗口管理器 │
│ ↓ 串流 │
│ KasmVNC(WebSocket → 浏览器) │
└────────────┬────────────────────────────────┘
│ 反向代理 + TLS + 鉴权
↓
┌────────┴────────┐
│ woc-panel │ ← 唯一对外入口,:36080
│ (用户浏览器) │
└─────────────────┘
- 微信来源:Linux 原生版 4.0,来自
linux.weixin.qq.com(x86_64 / arm64 / LoongArch),不改客户端 - 串流方案:KasmVNC(相较 Xpra 的优势:配置简单、稳定性高、HTML5 客户端开箱即用)
- 并发控制:同一实例多人同时操作时自动只读锁 + 申请接管机制,避免键鼠冲突
⚠️ 实测资源占用(8 核 / 8 GiB 宿主,实例均已登录微信含 Chromium 内核):README 有记录,具体数字请自行查阅(v1.4.9 版本实测数据)。
坑与注意
- 严禁暴露公网:这是最高风险点。任何能访问面板的人都能操作你的微信。建议全程走内网 + VPN / 飞牛 FN Connect 内网穿透访问。
- 首次建实例拉取超时:NAS Docker Hub 加速不覆盖 docker.sock 拉取,先手动拉镜像到本地是稳定解法(见上文)。
- 微信会话定期失效:微信桌面端会定期要求手机重新扫码,持久化数据卷能降低频率但不能消除;需在 web 界面重新扫码。
- 磁盘空间预检:v1.4.9 起安装前会检查磁盘空间;之前版本若报"卡在 28%"且网络正常,极可能是磁盘满。
- Tailscale / IPv6 内网支持:v1.4.9 起已支持 Tailscale CGNAT 段(100.64.0.0/10)和内网 IPv6(fc00::/7 / fe80::/10);旧版本这些地址会被 400 拒绝。
- 封号风险:官方 Linux 原生版 + 不改客户端理论上合法,懒猫微服宣称"永不封号";但 WechatOnCloud 是第三方方案,无法保证,建议小号测试。
- 多端操作软锁:同实例多人同时操作时其他人只读,需申请接管;多人协作前了解这一机制。
- 子账号 ≠ 微信账号:子账号是访问面板的身份,不是另开微信账号;同一微信实例共享同一个微信会话。
与同类对比
| 方案 | 架构 | 微信官方客户端 | 多端共享 | 资源占用 | 适合谁 |
|---|---|---|---|---|---|
| WechatOnCloud | 容器 + Xvfb + KasmVNC | ✅ Linux 原生 4.0 | ✅ | 轻量 | NAS / 服务器用户 |
| 懒猫微服 | 容器 + 内网穿透 | ✅ | ✅ | 轻量 | 不想自建的用户(付费) |
| 虚拟机方案 | VM + 完整桌面 | ✅ | ✅ | 重(需分配 CPU/RAM/存储) | 有足够资源的 NAS |
| 网页微信 | 无 | ❌(网页版功能阉割) | ✅ | 极轻 | 仅轻度使用 |
懒猫微服是同类商业产品(付费),WechatOnCloud 是自建开源方案,核心思路一致(不改客户端 + 容器化 + 串流)。
一句话推荐结论
NAS / 服务器用户运行微信的最佳开源方案——如果你有飞牛 fnOS 或任何 Docker 主机,想把微信和网页版社媒常驻云端并多端共享,WechatOnCloud 以轻量容器 + KasmVNC 串流提供了比 VM 更稳、更省资源的完整解法;但安全性是第一优先级,严禁公网暴露,建议配合 VPN 使用。