xiaowei-system/skills/devops/devops-umbrella/references/gaokao-site/deployment-workflow.md

2.1 KiB
Raw Blame History

gaokao-site 部署工作流

2026-06-21 新增,来自 v3.0/v3.1 部署经验

标准部署步骤

每次改完代码后的完整部署流程:

# 1. 同步修改文件到服务器
sshpass -p 'xue.2538' scp gaokao_chat_server_v2.py root@192.144.179.11:/www/wwwroot/gaokao/
sshpass -p 'xue.2538' scp index.html root@192.144.179.11:/www/wwwroot/gaokao/
# ...(视改动的文件而定)

# 2. 重启示后端
sshpass -p 'xue.2538' ssh root@192.144.179.11 "pkill -f gunicorn && sleep 2 && cd /www/wwwroot/gaokao && nohup /www/server/panel/pyenv/bin/gunicorn --workers 2 --bind 127.0.0.1:8080 --timeout 180 --access-logfile /tmp/gaokao_access.log --error-logfile /tmp/gaokao_error.log gaokao_chat_server_v2:app > /dev/null 2>&1 &"

# 3. 等启动
sleep 3

# 4. 清 Redis 缓存(改过推荐逻辑或 AI prompt 时必须清)
sshpass -p 'xue.2538' ssh root@192.144.179.11 "redis-cli keys 'aichat:*' | xargs -r redis-cli DEL"

# 5. 验证
sshpass -p 'xue.2538' ssh root@192.144.179.11 "curl -s -X POST http://127.0.0.1:8080/api/prob -H 'Content-Type: application/json' -d '{\"score\":517,\"subject\":\"物理类\"}'"

# 6. 推送到 Gitea
cd ~/mc/gaokao-site
cp ~/mc/gaokao-site-v3.0/gaokao_chat_server_v2.py ~/mc/gaokao-site/
git add . && git commit -m "描述改动" && git push origin master

注意事项

  • Redis 缓存键模式aichat:{score}:{subject}aichat:{score}:{subject}:{area}:{major}:{risk}
  • 必须清缓存的情况改了推荐算法、AI prompt、学校类型检测、专业数据查询
  • 不需要清缓存的情况纯前端改HTML/CSS/JS 样式改动)
  • gunicorn 重启NOT HUP 信号(经常失效),必须 pkill -f gunicorn + 重新启动
  • pycache:改 .py 文件后建议 rm -rf /www/wwwroot/gaokao/__pycache__/

为什么 Gitea 推送可能失败

云服务器192.144.179.11)无法直接访问内网 Gitea192.168.123.11:3000。 必须在本地笔记本上 push

# 先把改好的文件同步到本地 git repo
cp ~/mc/gaokao-site-v3.0/*.py ~/mc/gaokao-site/
cp ~/mc/gaokao-site-v3.0/*.html ~/mc/gaokao-site/
cd ~/mc/gaokao-site && git push origin master