You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
3 weeks ago | |
|---|---|---|
| cache | 4 weeks ago | |
| common | 3 weeks ago | |
| config | 4 weeks ago | |
| handler | 3 weeks ago | |
| live | 3 weeks ago | |
| logger | 1 month ago | |
| middleware | 4 weeks ago | |
| mock | 3 weeks ago | |
| model | 3 weeks ago | |
| mqtt | 4 weeks ago | |
| route | 3 weeks ago | |
| service | 3 weeks ago | |
| sql | 3 weeks ago | |
| token | 4 weeks ago | |
| tool | 4 weeks ago | |
| vo | 3 weeks ago | |
| websocket | 1 month ago | |
| DESIGN.md | 4 weeks ago | |
| Makefile | 1 month ago | |
| README.md | 4 weeks ago | |
| config-prod.yaml | 3 weeks ago | |
| config.yaml | 3 weeks ago | |
| go.mod | 3 weeks ago | |
| go.sum | 3 weeks ago | |
| main.go | 4 weeks ago | |
| publish-prod.sh | 4 weeks ago | |
README.md
laic-backend
低空智控平台 后端 Go 服务。
生产部署
部署脚本参考 D:/GoProject/roller-service/roller-manage/publish-prod.sh,使用 Supervisor 管理服务。
服务器准备
在生产服务器安装 Supervisor。生产配置保存在仓库根目录的 config-prod.yaml,部署脚本会将它上传为服务器部署目录中的 config.yaml:
sudo apt update
sudo apt install supervisor -y
sudo systemctl enable --now supervisor
生产配置至少包含:
oss:
endpoint: https://obs.cn-east-2.myhuaweicloud.com
access-key: 实际的华为云 OBS AK
secret-key: 实际的华为云 OBS SK
bucket: gcs-edu
region: cn-east-2
use-ssl: true
后端启动时直接读取部署目录下的 config.yaml。本地开发不设置 LAIC_CONFIG_FILE 时读取本地 config.yaml;Supervisor 显式设置 LAIC_CONFIG_FILE=config.yaml。
执行部署
修改 publish-prod.sh 顶部的 REMOTE、REMOTE_DIR 和服务参数,然后执行:
chmod +x publish-prod.sh
./publish-prod.sh
脚本会完成:
- 交叉编译 Linux amd64 二进制。
- 创建远程部署目录、日志目录和备份目录。
- 备份旧二进制和
config.yaml(首次部署没有旧文件时跳过)。 - 将本地
config-prod.yaml上传为远程config.yaml。 - 更新 Supervisor 配置、重启服务并检查状态。
- 启动失败时自动恢复最近的旧二进制。
首次部署前确认远程服务器已安装并运行 Supervisor:
sudo apt update
sudo apt install supervisor -y
sudo systemctl enable --now supervisor
查看状态和日志:
sudo supervisorctl status laic-backend-prod
sudo tail -f /usr/local/laic-backend-prod/log/info.log
sudo tail -f /usr/local/laic-backend-prod/log/err.log
部署目录和服务名可以在 publish-prod.sh 顶部调整。回滚时,脚本会使用远程 backup/ 目录中最近的二进制备份;也可以手工恢复后执行:
sudo supervisorctl restart laic-backend-prod