用途:把 Zeabur 线上模板备份到本地 git 仓库,并按统一命名规范保存。
适用触发:用户给出 Zeabur 模板 URL(如 https://zeabur.com/templates/85IQXQ)、要求备份/保存模板,或需要为线上模板创建本地副本时使用。
命名规范:路径为 {service-name}/zeabur-template-{service-name}-{TEMPLATE_CODE}.yaml。示例:elasticsearch-kibana/zeabur-template-elasticsearch-kibana-85IQXQ.yaml、dify/zeabur-template-dify-1D4DOW.yaml、postiz/zeabur-template-postiz-v2.12-X2L3BE.yaml。备份仓库位置视用户设置而定,可在工作区查找 zeabur-template 目录,或询问用户;常见默认位置为 ~/Documents/zeabur/zeabur-template/。
下载方式:Zeabur 模板可在模板 URL 后追加 .yaml 直接下载。例如模板页 https://zeabur.com/templates/1D4DOW 对应 https://zeabur.com/templates/1D4DOW.yaml,用 curl -sL https://zeabur.com/templates/{TEMPLATE_CODE}.yaml -o output.yaml 下载。
步骤:1)从 URL 提取模板代码(https://zeabur.com/templates/{TEMPLATE_CODE})。2)下载 YAML 并读取 metadata.name 作为模板名称,命令:curl -sL https://zeabur.com/templates/{TEMPLATE_CODE}.yaml -o /tmp/template.yaml;grep -A1 'metadata:' /tmp/template.yaml | grep 'name:' | head -1。3)将模板名转为小写 kebab-case 作为服务名,保持简短可描述。4)创建目录并保存:REPO=~/Documents/zeabur/zeabur-template(按实际路径调整);mkdir -p $REPO/{service-name};mv /tmp/template.yaml $REPO/{service-name}/zeabur-template-{service-name}-{TEMPLATE_CODE}.yaml。5)提交:cd $REPO;git add {service-name}/;git commit -m "feat({service-name}): add {Template Name} template"。6)如用户要求则执行 git push。
工具约定:必须始终用 npx zeabur@latest 调用 Zeabur CLI,不要直接用 zeabur 或其他安装方式;若 npx 不可用,先安装 Node.js。模板 YAML 参考与编辑可使用 zeabur-template 技能。
常见问题:curl 返回 HTML 而非 YAML 时,检查模板代码是否正确;模板名含特殊字符时,目录用简单的 kebab-case;文件已存在时,与现有文件比较,必要时更新。
限制:资料未说明模板大小、备份频率、权限或失败重试等其他细节。