## 目标 在腾讯云(Ubuntu 22.04 x86_64)上仅部署 `xiaozhi-esp32-server` 的 **Server** 模块: - ASR:百度(API) - LLM:DeepSeek(API) - TTS:EdgeTTS(无需 key) - 无域名:直接使用 `ws://公网IP:8000` 和 `http://公网IP:8003` > 注意:不要把任何真实 `API Key/Secret` 提交到公网仓库;也不要把 key 发到聊天里。 --- ## 1) 服务器侧安全组/防火墙 放行端口: - `8000/tcp`(WebSocket) - `8003/tcp`(HTTP:OTA/视觉接口) 强烈建议:先只允许你自己的公网出口 IP(而不是全网开放)。 --- ## 2) 拷贝文件到服务器 把本目录下这两个文件上传到服务器,例如: - `/opt/xiaozhi-server/docker-compose.yml` - `/opt/xiaozhi-server/data/.config.yaml` 目录结构应为: ``` /opt/xiaozhi-server docker-compose.yml data/ .config.yaml ``` --- ## 3) 修改配置 编辑 `/opt/xiaozhi-server/data/.config.yaml`: - 把 `PUBLIC_IP` 改成你的公网 IP - 填上百度 ASR、DeepSeek 的密钥 --- ## 4) 启动/查看日志 在服务器执行: ```bash cd /opt/xiaozhi-server docker compose up -d docker logs -f xiaozhi-esp32-server ``` --- ## 5) ESP32 需要填的地址 - WebSocket:`ws://PUBLIC_IP:8000/xiaozhi/v1/` - OTA:`http://PUBLIC_IP:8003/xiaozhi/ota/` --- ## 6) 排查命令(把输出贴出来即可) ```bash docker ps docker logs --tail 120 xiaozhi-esp32-server ss -lntp | grep -E '(:8000|:8003)' curl -sS -D- http://127.0.0.1:8000/ | head curl -sS -D- http://127.0.0.1:8003/xiaozhi/ota/ | head ```