什么是云微?

云微(WechatOnCloud)是一个开源自托管项目,可以在你自己的 NAS 或服务器上运行「服务端微信」,实现多端浏览器共享同一会话。不仅如此,它还能创建 Chromium 浏览器实例,常驻云端登录 Telegram、X(Twitter)、Instagram 等网页版社媒,多端同步。

核心原理:每个实例 = 一个独立 Docker 容器,内含 Xvfb 虚拟显示 + 应用(官方原版微信或 Chromium),通过 KasmVNC 将画面串流到浏览器。面板作为唯一对外入口,经 docker.sock 按需创建/销毁实例并反向代理。

部署前准备

  • 极空间 NAS 已安装 Docker(极空间系统自带)
  • 确认 NAS 的 CPU 架构(极空间一般为 x86_64/amd64,云微同时支持 arm64)
  • 确保 NAS 能正常拉取 Docker 镜像(如不行需配置镜像加速)

第一步:创建配置文件

在极空间 Docker 目录下新建一个文件夹(如 woc),创建 .env 文件写入自定义配置:

WOC_USER=admin
WOC_PASSWORD=你的安全密码
WOC_IMAGE_PREFIX=docker.io/gloridust
WOC_PUID=1000
WOC_PGID=1000
WOC_TZ=Asia/Shanghai
WOC_HTTP_PORT=36080

务必修改默认密码,默认账号密码是 admin / wechat,非常不安全。

第二步:创建 docker-compose.yml

在同一目录下创建 docker-compose.yml 文件,内容如下:

services:
  panel:
    image: ${WOC_IMAGE_PREFIX:-docker.io/gloridust}/woc-panel:${WOC_VERSION:-latest}
    container_name: woc-panel
    environment:
      - PORT=8080
      - WOC_WECHAT_IMAGE=${WOC_IMAGE_PREFIX:-docker.io/gloridust}/wechat-on-cloud:${WOC_VERSION:-latest}
      - PUID=${WOC_PUID:-1000}
      - PGID=${WOC_PGID:-1000}
      - TZ=${WOC_TZ:-Asia/Shanghai}
      - WOC_SPOOF_OS=1
      - WOC_SESSION_DAYS=30
      - PANEL_ADMIN_USER=${WOC_USER:-admin}
      - PANEL_ADMIN_PASSWORD=${WOC_PASSWORD:-wechat}
      - PANEL_DATA=/data/accounts.json
    volumes:
      - ./data-panel:/data
      - /var/run/docker.sock:/var/run/docker.sock
      - /dev:/host-dev:ro
    ports:
      - "${WOC_HTTP_PORT:-36080}:8080"
    logging:
      driver: json-file
      options:
        max-size: "20m"
        max-file: "2"
    restart: unless-stopped

也可以直接从 GitHub 下载原版文件:

curl -fsSL https://raw.githubusercontent.com/Gloridust/WechatOnCloud/main/docker-compose.yml -o docker-compose.yml

第三步:部署

方式一:SSH 命令行

cd /path/to/docker/woc
docker compose up -d

方式二:极空间管理界面

  1. 打开极空间管理界面,进入 DockerCompose
  2. 新建项目,将 docker-compose.yml 内容粘贴进去
  3. 设置环境变量(对应 .env 中的值)
  4. 点击部署

第四步:登录面板并创建实例

部署完成后,浏览器访问 http://极空间IP:36080,用管理员账号登录。

  1. 进入「实例」页面,点击「新建实例
  2. 选择应用类型为 微信,命名实例,勾选可访问的子账号
  3. 面板自动创建容器(首次需拉取镜像,耐心等待)
  4. 进入实例后点击「下载并安装」微信(约 190~210MB,有进度条)
  5. 安装完成后点击「进入实例」,用微信扫码登录

至此,微信已在极空间上常驻运行。任意设备打开浏览器访问面板地址,登录后进入实例,就是同一个微信会话。

创建浏览器实例(可选)

云微不仅支持微信,还能创建 Chromium 浏览器实例:

  • 新建实例时选择 Chromium 浏览器
  • 浏览器随镜像就绪,无需额外下载
  • 进入后直接登录 Telegram Web、X、Instagram 等网页版应用
  • 登录态写入数据卷,容器重启也不丢失

资源占用参考

状态CPU内存
单实例空闲~0.1–0.2 核~0.6 GiB
单实例活跃~0.5–1 核~1–1.5 GiB
面板本身可忽略~0.12 GiB

建议 4 核 / 8 GiB 的极空间 NAS 跑 3–4 个实例。

安全提醒

  • 绝不要把面板裸暴露公网,仅内网访问或通过 VPN/内网穿透
  • 务必修改默认密码
  • 面板挂载了 docker.sock,等同 root 权限,注意安全
  • 建议在面板外层套 HTTPS 反代

常见问题

新建实例卡住,报 registry-1.docker.io timeout

这是 Docker 拉取实例镜像超时。解决方法:先在极空间 Docker 镜像管理中手动拉取 gloridust/wechat-on-cloud:latest,拉取完成后面板创建实例会直接复用本地镜像。

拉不动 Docker Hub 镜像

.env 中将 WOC_IMAGE_PREFIX 改为备用源:

  • ghcr.io/gloridust(GitHub Container Registry)
  • ghcr.nju.edu.cn/gloridust(南京大学镜像站,国内较稳)

总结

云微是一个功能强大且设计精良的自托管方案,通过极空间 NAS 的 Docker 能力,轻松实现微信和各类社媒的云端常驻、多端同步。整个部署过程只需一个 docker-compose.yml 和几行配置,非常适合 NAS 玩家折腾。

项目地址:https://github.com/Gloridust/WechatOnCloud