SuperAPI AI 工具集

zeabur-deploy

部署与运维

查看项目

更新于 10-15 12:10

技能介绍

用途 Zeabur Deploy 用于将本地项目或代码库部署到 Zeabur,适用于用户表达“deploy this”“deploy to Zeabur”“deploy from GitHub”“search my repos”等部署意图时。

前提与调用方式 始终使用 npx zeabur@latest 调用 Zeabur CLI,不要直接使用 zeabur 或任何其他安装方式;若 npx 不可用,需先安装 Node.js。 部署前必须先确定目标项目。如果对话历史或项目文件中都没有提到项目,可运行: npx zeabur@latest project list -i=false --json 若存在项目,询问用户使用哪一个。若列表为空或用户想新建项目,必须调用 zeabur-project-create 技能,不要直接运行 project create CLI 命令(该技能会通过 server list 处理区域选择,这是必需的)。在目标项目确认前不要继续部署。

部署到指定专用服务器 如果用户要求部署到特定服务器(例如“deploy to my AWS Tokyo server”),不要通过 SSH 登录服务器。运行 ZeaburOS 的服务器由平台管理,应通过 Zeabur CLI 部署服务,而不是手动把文件放到机器上。只有 ZeaburOS 服务器可以承载项目;租用的服务器初始为普通 Ubuntu(基础系统与 SSH,无 Zeabur 服务),需先安装 ZeaburOS,参见 zeabur-server-rent 技能。若因服务器没有 Zeabur 服务而部署失败,应告知用户,而不要尝试通过 SSH 配置该机器。查找绑定到服务器的项目:从 npx zeabur@latest server list -i=false(或对话上下文)获取 server ID;在 project list --json 输出中查找 Region.ID 匹配 server-<server-id> 的项目;若存在匹配项目,用其 project ID 部署;若不存在,调用 zeabur-project-create 技能在该服务器上创建。

选择部署方式 Zeabur 支持两种方式:直接部署(默认,适用于用户说“deploy this project/website/app”,不需要 Git 仓库,快速简单)与 Git 部署(用户明确要求通过 Git/GitHub 部署,或需要推送自动重新部署的 CI/CD)。除非用户明确要求基于 Git 部署,否则默认使用直接部署。

直接部署(默认) 用一条命令将当前本地目录部署到 Zeabur。相关参数:--project-id(非交互模式下必填,指定部署的项目 ID)、--json(推荐,以 JSON 格式输出)、--name(可选,服务名,默认为目录名)、--service-id(可选,用于重新部署的服务 ID,省略则创建新服务)、--environment-id(可选,环境 ID,默认为第一个环境)。注意:不要在 deploy 命令中使用 --create、-r 或 --region 参数;若用户需要新建项目或选择区域,先使用 zeabur-project-create 技能。 首次部署时省略 --service-id,会自动创建新服务: npx zeabur@latest deploy --project-id <project-id> --json 响应中包含 service_id,必须保存该 ID 用于后续所有部署,并立即写入当前项目的 CLAUDE.md:

Zeabur Deployment

  • Project ID: <project-id>
  • Service ID: <service-id> 重新部署(更新现有服务)时,必须传入 --service-id 以更新现有服务;省略 --service-id 每次都会创建新的重复服务: npx zeabur@latest deploy --project-id <project-id> --service-id <service-id> --json 不要用此流程处理预构建或市场服务的版本升级/降级(例如“upgrade PostgreSQL to 16”“downgrade n8n to 1.2”)。这属于版本切换而非代码重新部署,应改用 zeabur-update-service 技能的 tag 更新;用重新部署替代 tag 变更可能导致服务挂载磁盘孤立或被抹除。若尚无项目,调用 zeabur-project-create 技能(不要直接运行 CLI 命令)。

Git 部署(按用户要求) 若用户明确希望基于 Git 部署(例如为了 CI/CD、推送自动重新部署):首先确保代码已推送到 GitHub 仓库,然后通过 CLI 部署:

非交互模式——仅必需参数

npx zeabur@latest service deploy --json -i=false
--project-id <project-id>
--template GIT
--repo-id <repo-id>
--branch-name <branch>

带可选服务名

npx zeabur@latest service deploy --json -i=false
--project-id <project-id>
--template GIT
--repo-id <repo-id>
--branch-name <branch>
--name "<service-name>" Git 部署参数:--template GIT(必填,指定基于 Git 部署)、--project-id(非交互模式需要,交互模式会提示)、--repo-id(非交互模式需要,GitHub 仓库 ID)、--branch-name(非交互模式需要,部署的 Git 分支)、--name(可选,服务名,默认为仓库名)、--keyword(可选,交互模式下搜索 GitHub 仓库的关键词)。 Git 部署工作流:

1. 搜索用户的 GitHub 仓库

npx zeabur@latest service search-repo <keyword> --json -i=false

返回:[{"Name":"my-app","Owner":"user","URL":"...","ID":12345}, ...]

若返回多个结果,询问用户部署哪个仓库。

消歧由智能体(而非 CLI)负责。

2. 使用搜索结果中的 repo ID 从 GitHub 部署

npx zeabur@latest service deploy --json -i=false
--project-id $PROJECT_ID
--template GIT
--repo-id <repo-id>
--branch-name main 部署后,Zeabur 会在每次推送到所选分支时自动重新部署。仅当用户明确要求基于 Git 部署时,才引导其走此流程。

提示 直接部署只需 --project-id,会自动创建新服务,不需要 Git 历史或 GitHub 账号。对于静态站点,Zeabur 会自动检测并正确提供服务。首次部署后务必同时保存 Project ID 和 Service ID,以避免重新部署时产生重复服务。部署后,可使用 zeabur-deployment-logs 技能查看构建与运行时日志。

限制与暂未提供的信息 资料未说明收费、价格、平台支持范围、部署时长或性能效果等细节,这些信息暂未提供。