feat(deploy): GPU节点自动部署配置文件入库(musetalk-worker+gpu-poll+setup/update脚本) #1999
Reference in New Issue
Block a user
Delete Branch "feat/gpu-node-auto-deploy"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
背景
RTX2060 GPU渲染节点已手动部署完成,systemd托管+自动更新机制已验证。把部署配置文件入库,方便后续新节点部署和维护。
新增文件(7个,337行)
systemd单元(3个)
musetalk-worker.service— MuseTalk推理API常驻服务(User=ying, WorkingDirectory=/home/ying/projects/MuseTalk, 自动重启, 日志走journal)gpu-poll.service— 自动更新轮询oneshot(执行poll_and_update.sh)gpu-poll.timer— 每30秒触发轮询(OnBootSec=30, OnUnitActiveSec=30, AccuracySec=5)运维脚本(3个,均chmod +x)
scripts/update-gpu-worker.sh— 自动更新主脚本:scripts/poll_and_update.sh— 轮询Gitea API:scripts/setup-gpu-node.sh— 新节点一键初始化:文档
README.md追加第七章「自动部署」(128行):服务架构表、新节点部署步骤(前置手动准备+一键setup+初始化检查)、自动更新机制(push→30s内拉取→健康检查→失败回滚)、手动更新命令、日志位置、仓库文件清单、注意事项明确不改动
使用方式
新节点:前置准备NVIDIA驱动+CUDA+MuseTalk代码+模型权重+venv后,wget setup-gpu-node.sh执行即可。
现有节点(RTX2060):setup已手跑过,现在push到develop即自动更新;可手动
bash ~/projects/update-gpu-worker.sh立即触发。注意事项
- Move GPU wait_for_result to Celery background task (lipsync_gpu_process_async) POST /lipsync/jobs now returns <1s instead of blocking 200s+ - Rewrite musetalk_server.py: MuseTalk receives full audio directly (v2 architecture) — no pre-looping video before inference Output video length = audio length, mux is fast stream copy - Frontend polls GET /lipsync/jobs/{id} for status updates - refresh_job_status: GPU async path (processing + no mediakit_task_id) skips MediaKit polling; stale jobs (>30min) auto-marked failed - 21 unit tests pass (11 GPU integration + 10 musetalk audio mux) Co-Authored-By: Coze <coze-opensource@bytedance.com>🚀 预览环境已部署
🗑️ 预览环境已清理
PR #1999 已关闭或合并,对应的预览环境已被清理。