Files
goauto/docs/13-deployment-and-operations.md
T

2.9 KiB
Raw Blame History

generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) wiki_page: Deployment-and-Operations wiki_url: https://git.ilapage.cn/OPC/goauto/wiki/Deployment-and-Operations.- wiki_revision: 80ae5c8cea87c624fff63ce3e302aa7bf204811e synchronized_at: 2026-08-31T16:07:03Z

部署与运维

当前线上拓扑

  • 外部入口:http://185.216.248.75:9527,Nginx 同时承载 Admin 静态资源并反向代理 GoAuto API。
  • GoAuto 服务监听:127.0.0.1:8010。
  • 常驻服务:systemd goauto.service。
  • 工作目录:/home/goauto/current,指向 /home/goauto/releases/<发布标识>。
  • 服务配置:/home/goauto/current/config/settings.yml;敏感环境变量由 /etc/goauto/goauto.env 提供,不写入 Git、Wiki、工单或日志。
  • Agent APK 私有目录:相对工作目录的 var/goauto-agent-releases;下载必须通过已认证接口。

Agent HTTP 例外

服务端生产模式默认要求 Agent 使用 HTTPS。当前线上入口只有 HTTP,因此经 #181 用户明确确认,在 /etc/goauto/goauto.env 设置:

GOAUTO_ALLOW_INSECURE_AGENT_HTTP=true

该开关只放宽全部 /api/agent/v1/**,包括注册、心跳、采集、采购、Agent 版本检查与下载;不放宽 Admin、PDD、SYB、OCR 或其他第三方地址的安全约束。HTTP 会明文传输 Device Token、任务内容、设备状态和执行结果。后续启用 HTTPS 后应删除该变量或设为 false。

GOAUTO_TRUST_FORWARDED_PROTO=true 只表示信任受控反向代理传入的 X-Forwarded-Proto: https,不能把实际 HTTP 请求视为加密链路,也不能替代上述显式 HTTP 开关。

发布与验证

  1. 在本地完成服务端测试/构建和 Android 单测/APK 构建,记录提交、versionCode、SHA-256 与大小。
  2. 创建新的 /home/goauto/releases/<发布标识>,复制服务端二进制、Web 静态资源和非敏感配置;保留旧发布目录用于回滚。
  3. 原子切换 /home/goauto/current 后重启 goauto.service,确认 systemctl is-active goauto.service 为 active,并从外部入口验证 API。
  4. 上传 APK 到 Admin Agent 版本并按需设为当前;服务端解析 Manifest,校验 versionCode 唯一性并保存 SHA-256。
  5. 真机安装前确认设备没有运行中的任务。Android 系统安装确认仍由人工完成,Agent 不静默安装。

发布、重启、设置当前 Agent 版本和真机安装都属于高风险操作,必须有对应工单和人工确认。不得在部署过程中执行付款、创建订单或清理生产数据。

回滚

服务异常时把 /home/goauto/current 切回上一已验证发布目录并重启 goauto.service,随后复核服务状态和 Agent 接口。不要删除当前或历史 APK/发布目录来代替回滚;数据库变化如需回退必须单独评估。