2.9 KiB
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 开关。
发布与验证
- 在本地完成服务端测试/构建和 Android 单测/APK 构建,记录提交、versionCode、SHA-256 与大小。
- 创建新的
/home/goauto/releases/<发布标识>,复制服务端二进制、Web 静态资源和非敏感配置;保留旧发布目录用于回滚。 - 原子切换
/home/goauto/current后重启goauto.service,确认systemctl is-active goauto.service为active,并从外部入口验证 API。 - 上传 APK 到 Admin Agent 版本并按需设为当前;服务端解析 Manifest,校验 versionCode 唯一性并保存 SHA-256。
- 真机安装前确认设备没有运行中的任务。Android 系统安装确认仍由人工完成,Agent 不静默安装。
发布、重启、设置当前 Agent 版本和真机安装都属于高风险操作,必须有对应工单和人工确认。不得在部署过程中执行付款、创建订单或清理生产数据。
回滚
服务异常时把 /home/goauto/current 切回上一已验证发布目录并重启 goauto.service,随后复核服务状态和 Agent 接口。不要删除当前或历史 APK/发布目录来代替回滚;数据库变化如需回退必须单独评估。