管理员
运行你自己的 Welley 服务器
我们的命令行工具可以在一台 Linux 机器上装好 Welley 需要的一切。云服务器可以用,你自己的硬件也可以。
我们计划将来把 Welley 开源。发布日期和许可证目前都还没有公布。
准备好主机、DNS 和邮件
这些是快速入门里的起步要求。你需要多大的容量,取决于用户数量和工作负载。
Linux 主机
- Ubuntu 24.04 LTS,或类似的较新发行版。
- 从 2 vCPU、4 GB 内存和 60 GB 磁盘起步。
- 使用固定的公网 IPv4 地址,以及一个有 sudo 权限的非 root 用户。
网络
- 允许从互联网访问入站 TCP 80 和 443,允许从你自己的网络访问 TCP 22。
- 请保持 80 端口空闲,用于证书验证和每周一次的证书续期。
站点 DNS
- 把你的域名和 storage.<domain> 指向主机的 IP 地址。
- 请在安装前创建这两条记录。CLI 会检查它们,如果没有解析到这台主机就会停止。
SMTP 和管理员邮箱
- 请准备好 SMTP 主机、用户、密码和发件地址。默认使用 587 端口的 STARTTLS。
- 你还需要一个管理员邮箱,用于首次登录和找回密码。
邮件 DNS
- 为发件地址所在的域名设置 SPF、DMARC,以及你的邮件服务商生成的 DKIM。
- 请使用服务商给出的准确 SPF 值。把它合并到你现有的 SPF 记录里,不要再添加第二条。
- 如果缺少 SPF 或 DMARC,CLI 会提醒你。它无法检查你的服务商的 DKIM 选择器。
安装 Docker Engine 和 Compose
请按 Docker 官方针对你的 Linux 发行版的说明操作,然后让你的部署用户拥有使用 Docker 的权限。
把用户加入 Docker 组
把 <user> 换成你的非 root 部署用户。运行这条命令后,请退出登录再重新登录。
sudo usermod -aG docker <user>
检查 Docker 和 Compose
这两条命令都要能在该用户下正常运行。
docker ps
docker compose version
下载 CLI
请选择与你运行 CLI 的机器相匹配的二进制文件。部署主机本身必须运行 Linux。
Linux,x86-64
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/amd64" -o wlycli
chmod +x wlycli
./wlycli -vLinux,ARM64
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/arm64" -o wlycli
chmod +x wlycli
./wlycli -vmacOS,Apple silicon
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/arm64" -o wlycli
chmod +x wlycli
./wlycli -vmacOS,Intel
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/amd64" -o wlycli
chmod +x wlycli
./wlycli -v- 这些命令会从稳定通道下载,并显示 CLI 的版本。
- 每次发布新版本,版本号都会变。安装时请参考最新的 CLI 文档。
创建部署
在你准备好的 Linux 主机上运行这条命令。请把示例中的域名、邮箱和 SMTP 值换成你自己的。
./wlycli deploy create \
-d example.com \
-e admin@example.com \
--smtp-host smtp.example.com \
--smtp-user "$MAIL_USER" \
--smtp-password "$MAIL_PASSWORD" \
--smtp-from noreply@example.com| 设置 | 默认值 |
|---|---|
| 安装目录 | ~/.welley/<project>。示例域名生成的项目名是 example_com。 |
| 数据库 | 内置的 PostgreSQL,数据放在安装目录下。 |
| 组件 | Welley 平台、RAG 管道、Nginx、Redis 和 PostgreSQL,另有维护用的容器。 |
| 证书 | 通过 Certbot 使用 Let’s Encrypt,每周续期。 |
| 媒体 | 上传的文件和静态文件放在 https://storage.<domain>。 |
| 更新 | 稳定通道,每天检查一次。更新过程会尽量避免停机。 |
| 可选服务 | 最简配置不会添加托管数据库、CDN、遥测或 Slack 集成。 |
- 运行之前,请先把 MAIL_USER 和 MAIL_PASSWORD 设为你的 SMTP 凭据。
- 快速入门要求带上这六个参数。
- 这条命令会检查 DNS、写入部署文件、用 Certbot 获取证书,并启动容器。
- deploy 命令是 deployment 的别名。
登录并检查结果
生成的管理员密码在平台日志里。请不要泄露这部分输出。
查找初始密码
这个容器名对应的是 example.com。如果用你自己的域名,请修改项目名。
docker logs example_com-platform-blue-1 | grep "Auto-init complete"
登录
打开你的域名,用你通过 -e 指定的管理员邮箱登录。请马上修改生成的密码。
检查容器
按照快速入门,你应该能看到 nginx、platform-blue、rag-pipeline-blue、postgres、redis、autoheal 和 snoopy。
docker ps
用 CLI 做管理
CLI 还提供了调用平台 API 的命令。你的账号仍然需要具备每个操作所需的权限。
- 运行某个操作之前,请先在命令帮助里查看它当前的参数。
- login 命令需要 API 基础 URL、邮箱和密码。它会保存返回的会话令牌。
- 目前,login 命令会在成功日志里输出会话令牌。请注意不要泄露这段输出。
命令组:accounts, posts, apps, emojis, feeds, reports, rules, settings。
显示可用命令
./wlycli --help
显示部署命令
./wlycli deployment --help
显示登录选项
./wlycli login --help
显示设置选项
./wlycli settings --help
更新与恢复
默认情况下,部署每天会检查一次稳定版更新。服务器管理员可以在管理界面中管理版本。
- 如果你的部署文件仍然有效,但有些容器出了问题,快速入门会让你运行 restart,它会重新创建这些容器。
- 只要项目目录或其中的容器还在,create 就不会再次运行。
- 强制删除选项会删除部署文件和内置数据库。它不是恢复步骤,也不会保留你的数据。
- deploy-server 技能仍然使用 deployment update 这个名称。当前的 CLI 改用 deployment auto-update。手动维护之前,请先查看当前 CLI 的帮助。
用现有部署重新创建容器
./wlycli deploy restart -d example.com
根据你保存的配置重新创建容器。不会删除部署数据。
用 AI 助手部署
如果你的 AI 助手支持 SKILL.md 包,可以下载我们官方的 deploy-server 技能。它会引导你完成 DigitalOcean 部署。
目前这个技能只支持 DigitalOcean。CLI 快速入门也适用于其他云服务和你自己的 Linux 主机。
使用方法
- 解压软件包,然后按你的助手安装技能的方式加载 deploy-server 目录。
- 让助手使用 $deploy-server。
- 技能会向你询问域名、DNS 访问权限、SSH 设置、SMTP 信息和管理员邮箱。
- 它可以设置 DigitalOcean 虚拟机,如果你需要,还可以设置托管的 PostgreSQL 数据库。它会和你确认部署所需的信息以及托管数据库的价格。
下载之前
- 这个软件包是原始技能的原样副本。
- 其中的下载和更新示例已经过时。请到本网站的快速入门获取当前稳定版的下载链接。维护之前请先查看 CLI 帮助。
- 这个技能不附带云服务凭据或运行中的服务器,我们也不能保证它适用于所有助手。
软件包里有 SKILL.md、agents/openai.yaml和references/digitalocean.md。两种下载包含的文件相同。
参考文档
完整的 CLI 文档和部署技能文件。无需账号即可在这里阅读。