mcpField
Z
zeabur-project-create

zeabur-project-create

github.com/zeabur云与 DevOps39179 次安装7 周前更新
代码仓库

关于 zeabur-project-create

zeabur-project-create 是使用 Zeabur CLI 创建项目的技能,面向需要在服务器上配置项目的用户。它会先列出可用服务器并要求用户选择区域,再支持部署模板。

主要功能

  1. 01列出服务器及区域信息
  2. 02依据用户选择创建项目
  3. 03提取项目 ID
  4. 04向项目部署模板
  5. 05要求选择合适服务器

适用场景

  1. 01在选定服务器上创建项目
  2. 02创建项目后部署模板

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/zeabur/agent-skills --skill zeabur-project-create

安装后在 Claude Code 中输入/zeabur-project-create确认已加载。

详细介绍

创建 Zeabur 项目

**始终使用 npx zeabur@latest 调用 Zeabur CLI。**切勿直接使用 zeabur 或通过其他方式安装。如果无法使用 npx,请先安装 Node.js。

选择区域

不要硬编码或猜测区域代码。hnd1、tpe1 等旧区域代码已弃用。必须始终根据用户的服务器列表确定区域。

步骤 1 — 列出用户的服务器:

npx zeabur@latest server list -i=false --json

步骤 2 — 询问用户要使用哪台服务器:

向用户展示服务器列表(显示每台服务器的名称、提供商和区域),并请他们选择一台。不要代替用户选择服务器。如果现有服务器都不合适,也请提供租用新服务器的选项。

  • **只有 os 为 ZeaburOS 的服务器才能托管项目。**报告为 Ubuntu 的服务器没有 Zeabur 服务;在其上创建项目会失败。请将它们从菜单中排除,或单独列为“需要先安装 ZeaburOS”——不要悄悄将其作为部署目标提供。

  • 如果用户没有服务器,请使用 zeabur-server-catalog 技能浏览选项,然后使用 zeabur-server-rent 技能租用一台。

步骤 3 — 使用带有 server- 前缀的所选服务器 ID 作为区域:

区域代码的格式为 server-<server-id>,其中 <server-id> 来自服务器列表输出。

某些模板(例如使用 REQUIRE_DEDICATED_SERVER 的模板)只能部署在专用服务器上。如果遇到 Unsupported template (code: REQUIRE_DEDICATED_SERVER),用户需要一台运行 ZeaburOS 的服务器,然后使用其区域重新创建项目。请注意,租用的服务器预装的是 Ubuntu,且没有 Zeabur 服务——必须先在其上安装 ZeaburOS(参见 zeabur-server-rent 技能),才能在其上创建项目。

创建项目

# Create project with name and region (region must be server-<server-id>)
npx zeabur@latest project create -n "<project-name>" -r "server-<server-id>" -i=false --json

获取项目 ID

# List projects as JSON and extract project ID by name
PROJECT_ID=$(npx zeabur@latest project list -i=false --json | jq -r '.[] | select(.name == "<project-name>") | ._id')

将模板部署到项目

# Deploy template file to specific project (non-interactive)
npx zeabur@latest template deploy -i=false --json \
  -f <template-file> \
  --project-id <project-id> \
  --var PUBLIC_DOMAIN=myapp \
  --var KEY=value

工作流

# 1. Find server ID
npx zeabur@latest server list -i=false --json

# 2. Create project (use server-<id> from step 1)
npx zeabur@latest project create -n "wrenai-prod" -r "server-<server-id>" -i=false --json

# 3. Get project ID
PROJECT_ID=$(npx zeabur@latest project list -i=false --json | jq -r '.[] | select(.name == "wrenai-prod") | ._id')
echo "Project ID: $PROJECT_ID"
echo "Dashboard: https://zeabur.com/projects/$PROJECT_ID"

# 4. Deploy template — use the `zeabur-template-deploy` skill for detailed flags and troubleshooting
npx zeabur@latest template deploy -i=false --json -f template.yml --project-id $PROJECT_ID --var PUBLIC_DOMAIN=myapp

评论

支持 Markdown