video-shuoshan/docs/deployment-guide.md
zyc 61bcb9576f
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 3m55s
add git guide
2026-04-04 18:26:05 +08:00

2.7 KiB
Raw Permalink Blame History

部署操作手册

本文档说明如何将代码推送到测试环境和生产环境。 日常开发在 dev 分支,生产发布通过合并到 master 分支触发。


环境说明

环境 触发分支 镜像仓库 K3s 集群 域名
测试development dev cr.volces.com/zyc/... 192.168.0.129:6443 airflow-studio.test.airlabs.art
生产production master gitea-prod-cn-shanghai.cr.volces.com/prod/... 192.168.0.130:6443 airflow-studio.airlabs.art

推送到测试环境

只需要把代码推到 dev 分支CI/CD 自动触发。

# 确认当前在 dev 分支
git checkout dev

# 提交代码
git add .
git commit -m "feat: 你的改动描述"

# 推送触发构建
git push origin dev

构建完成后在 Gitea Actions 查看进度:

  • Build and Push Backend
  • Build and Push Web
  • Setup Kubectl
  • Deploy to K3s

推送到生产环境

⚠️ 注意:操作完成后必须切回 dev 分支,不要在 master 上继续开发。

完整流程

# 1. 确保 dev 分支代码是最新的
git checkout dev
git pull origin dev

# 2. 切换到 master 分支
git checkout master

# 3. 合并 dev 的代码
git merge dev

# 4. 推送到远程,触发生产构建
git push origin master

# 5. ⚠️ 立刻切回 dev不要停留在 master
git checkout dev

如果有合并冲突

# 解决冲突后
git add .
git commit -m "merge: dev into master"
git push origin master
git checkout dev

构建失败排查

Build and Push 失败docker pull 超时)

Docker 镜像拉取超时CI 会自动重试 3 次。如仍失败,检查构建机网络。

Setup Kubectl 失败command not found

kubectl 未安装或下载失败CI 会自动从 daocloud 镜像安装。

Deploy to K3s 失败i/o timeout

K3s API Server 连接超时CI 会自动重试 3 次(每次间隔 10 秒)。

  • 若持续失败,检查 K3s 节点状态:kubectl get nodes
  • 确认 kubeconfig secretVOLCANO_TEST_KUBE_CONFIG / VOLCANO_PROD_KUBE_CONFIG)有值

快速检查部署状态

# 测试环境
ssh root@14.103.63.199
kubectl get pods -n default

# 生产环境
ssh root@118.196.0.100
kubectl get pods -n default

Celery Worker 监控

Celery worker 负责轮询火山 API 的视频生成状态。

# 查看 worker 日志(测试环境)
kubectl logs -f deployment/celery-worker -n default

# 查看队列积压(测试环境 Redis
redis-cli -h redis-shzlsczo52dft8mia.redis.ivolces.com -p 6379 -a Zyc188208 llen celery

recover_stuck_tasks 定时任务每 3 分钟自动扫描卡住的任务并重新入队,无需手动干预。