Docker + Compose
安装 Docker Engine 与 Compose,或 Docker Desktop。构建所需 Node.js 由产品 Dockerfile 提供。
GET YOUR TEAM READY
使用 Docker,从源码构建夭夭 AI v0.4.4。连接已有的 Hermes 服务,让 Web、macOS、iOS 和 Android 共用你的 AI 工作台。
v0.4.4 发布与下载01 / 准备环境
安装 Docker Engine 与 Compose,或 Docker Desktop。构建所需 Node.js 由产品 Dockerfile 提供。
准备容器能够访问的 Hermes Dashboard / Gateway,通常使用 9119 端口。
在包含 compose.yaml 和 docker.env.example 的产品源码目录中执行下方命令。
02 / 配置连接
先复制环境配置,再按实际网络编辑 docker.env。下面是默认的本机访问配置。
cp docker.env.example docker.envHERMES_YAOYAO_UPSTREAM=http://host.docker.internal:9119
HERMES_YAOYAO_BIND_ADDRESS=127.0.0.1
HERMES_YAOYAO_PUBLISHED_PORT=15300
HERMES_YAOYAO_ALLOWED_HOSTS=HERMES_YAOYAO_UPSTREAM容器可访问的 Hermes 地址。
HERMES_YAOYAO_BIND_ADDRESS默认 127.0.0.1;可信局域网访问可设为 0.0.0.0。
HERMES_YAOYAO_PUBLISHED_PORT宿主机发布端口,默认 15300。
HERMES_YAOYAO_ALLOWED_HOSTS域名访问时填写域名,多个值以英文逗号分隔。
Docker Desktop 可通过 host.docker.internal 访问宿主机。Linux 的 Compose 会映射宿主机网关,Hermes 还需监听容器可达的地址。远程 Hermes 则填写实际可访问的服务地址。
03 / 构建与启动
检查 Compose 配置后构建镜像并启动。首次构建需要下载依赖,请等待服务启动完成。
docker compose --env-file docker.env config --quiet
docker compose --env-file docker.env up -d --build
docker compose --env-file docker.env ps默认打开 http://127.0.0.1:15300,创建管理员账号,再到系统设置保存 Hermes 连接凭据。
iOS 和 Android 连接同一台夭夭服务器;iOS 支持账号密码或手机登录二维码。请使用手机可达的服务器 IP 或 HTTPS 域名,不要填写 9119 或手机自身的 127.0.0.1。Android 安装要求与客户端说明见发布页。
04 / 检查服务
以下命令使用默认端口。如果修改了发布端口,请同步调整 URL。
curl --noproxy '*' --fail http://127.0.0.1:15300/healthz
curl --noproxy '*' --fail http://127.0.0.1:15300/readyz
docker compose --env-file docker.env logs --tail=100 web/healthz夭夭 AI 自身是否正常。
/readyzHermes 上游是否就绪。
登录后创建角色并发送一条消息,再上传和下载附件。使用同一账号在 Web、iOS 或 Android 查看历史,完成一次完整验证。
05 / 数据与升级
账号、聊天记录、文件和密钥保存在 yaoyao-data 命名卷中,容器内路径为 /home/node/.yaoyao。替换容器会继续使用已有卷。
升级前停止 Web,备份完整数据目录到一个新的独立位置,保留文件权限和加密密钥,再启动服务。不要只复制单个数据库文件。
从 GitHub 发布页获取新版源码后,重新构建并创建容器。配套客户端要求以该版本发布说明为准。
docker compose --env-file docker.env up -d --build
docker compose --env-file docker.env psdocker compose down 会保留数据卷;添加 --volumes 会删除数据,仅在明确清空部署时使用。
06 / 常见问题
夭夭连接独立运行的 Hermes 9119 服务。无需挂载 Hermes 文件目录,也无需将 Docker socket 提供给应用。
局域网可将发布地址设为 0.0.0.0,并使用服务器 IP。公网访问应在反向代理上配置 HTTPS,并将正式域名加入允许列表。
检查上游地址、Hermes 的监听地址与容器网络。如果 Hermes 要求认证,在夭夭系统设置保存正确的连接凭据。
应用数据由你的服务器持久化。模型、工具或语音 Provider 可能使用远端服务,实际数据流向取决于所选配置。
夭夭产品采用 Apache-2.0 许可。使用与分发条件以产品源码内的 LICENSE 为准。