Claw Cloud 自动部署配置指南
一次配置,永久自动化
配置完成后,每次 git push 自动部署到 Claw Cloud,无需任何手动操作。
配置步骤(5 分钟)
1. 获取 Kubeconfig
在 Claw Cloud 中:
- 访问 https://jp-members-1.run.claw.cloud
- 登录你的账号
- 打开 Terminal 应用
- 运行以下命令:
cat ~/.kube/config | base64
- 复制输出的 base64 编码内容(很长的一串字符)
2. 配置 GitHub Secret
-
访问 GitHub 仓库设置: https://github.com/cygmris/snooker-guide/settings/secrets/actions
-
点击 "New repository secret"
-
填写信息:
- Name:
CLAW_KUBECONFIG - Value: 粘贴刚才复制的 base64 内容
- Name:
-
点击 "Add secret"
3. 完成!
配置完成。现在:
- ✅ 每次
git push到 master 分支自动部署 - ✅ Docker 镜像自动构建并推送
- ✅ Kubernetes 自动更新部署
- ✅ 自动验证部署成功
验证配置
触发首次部署
# 方式 1:推送任意代码变更
git commit --allow-empty -m "test: 触发自动部署"
git push
# 方式 2:手动触发 workflow
gh workflow run deploy-claw.yml
查看部署进度
-
访问 GitHub Actions: https://github.com/cygmris/snooker-guide/actions
-
点击最新的 "Deploy to Claw Cloud" workflow
-
查看实时日志
预期输出
成功的部署日志应该包含:
✅ Deployment successful! 1 replica(s) ready.
=== Deployment Status ===
NAME READY UP-TO-DATE AVAILABLE
snooker-guide 1/1 1 1
NAME READY STATUS RESTARTS
snooker-guide-xxxxxxxxxx-xxxxx 1/1 Running 0
工作流程
┌─────────────────┐
│ Git Push │
└────────┬────────┘
│
v
┌─────────────────────────────────┐
│ GitHub Actions 自动触发 │
├─────────────────────────────────┤
│ 1. 构建 Docker 镜像 │
│ 2. 推送到 GHCR │
│ 3. kubectl apply 部署 │
│ 4. 等待 Pod 就绪 │
│ 5. 验证部署成功 │
└────────┬────────────────────────┘
│
v
┌─────────────────┐
│ Claw Cloud │
│ 自动更新应用 │
└─────────────────┘
常见问题
Q: Kubeconfig 会过期吗?
A: 会。Claw Cloud 的 kubeconfig 通常有效期为 30-90 天。过期后需要重新获取并更新 GitHub Secret。
Q: 如何更新 Kubeconfig?
A: 重复步骤 1 和 2,用新的 base64 内容覆盖旧的 Secret。
Q: 部署失败怎么办?
A: 查看 GitHub Actions 日志,常见原因:
- Kubeconfig 过期 → 重新获取
- 镜像拉取失败 → 检查 GHCR 权限
- 资源不足 → 增加 CPU/内存限制
Q: 如何回滚到上一版本?
A: 在 Claw Cloud Terminal 中运行:
kubectl rollout undo deployment/snooker-guide -n snooker-guide
Q: 如何暂停自动部署?
A: 在 GitHub 仓库设置中禁用 workflow: https://github.com/cygmris/snooker-guide/actions/workflows/deploy-claw.yml
手动部署(备用方案)
如果自动部署失败,可以手动部署:
# 1. 配置 kubectl
mkdir -p ~/.kube
echo "$CLAW_KUBECONFIG" | base64 -d > ~/.kube/config
# 2. 部署
kubectl apply -f sealos/deployment.yaml
# 3. 查看状态
kubectl get pods -n snooker-guide
监控部署
实时查看 Pod 日志
kubectl logs -f deployment/snooker-guide -n snooker-guide
查看部署历史
kubectl rollout history deployment/snooker-guide -n snooker-guide
查看资源使用
kubectl top pods -n snooker-guide
成本说明
自动部署本身完全免费:
- GitHub Actions:免费额度充足(2000 分钟/月)
- GitHub Container Registry:免费(公开镜像)
- Claw Cloud:仅按实际资源使用计费(约 ¥3.6/月)
安全建议
- 定期更新 Kubeconfig:建议每月更新一次
- 限制 Secret 权限:仅添加必要的 Secret
- 审查 workflow 日志:定期检查部署日志
- 启用分支保护:保护 master 分支,要求 PR review