EdgeOne CLI

最近更新时间:2026-01-15 14:42:43

我的收藏

概述

EdgeOne CLI 提供了管理 Pages 函数的方法和快速部署的能力,借助 CLI,可以在项目中生成、配置和调试函数,也可以将构建完的产物以文件夹或 ZIP 包的形式上传至 Pages 平台。

一、准备工作

使用多种方式快速注册并登录 腾讯云控制台
在控制台开通 Pages 服务,创建新的 Pages 项目,并将其克隆到本地。

二、快速开始

1. 安装

在准备工作阶段克隆下来的项目中,可以通过 npm 来安装 CLI:
npm install -g edgeone
通过 edgeone -v命令,可以查看是否安装成功。通过edgeone -h命令,可以查看相关的所有命令。

2. 登录

执行登录命令,按照提示选择 Global (国际站)或 China (国内站),建议选择 China 以确保获取准确的数据和信息,然后在弹出的浏览器窗口完成登录。
edgeone login
完成登录后可以执行 edgeone whoami 查看当前登录账号的信息。

3. 初始化

成功登录后,执行初始化命令,在项目中初始化 EdgeOne Pages 需要的基础环境:
edgeone pages init
初始化过程中,根据指引以及您的需求,项目根目录下会生成 edge-functionsnode-functions 文件夹和示例的函数,后续可以在该文件夹下不断新增和开发函数,函数的详细用法请参见 Pages Functions

4. 本地开发

完成初始化后,进入本地开发阶段:
edgeone pages dev
注意:
该命令会优先读取 edgeone.json 中的 devCommand 参数来启动 dev 服务,若没有该配置则会读取 package.json 的 dev 命令进行启动。切记请勿在 edgeone.json 或 package.json 中配置 edgeone pages dev!
Edge Functions 调试服务有启动次数限制,因此尽量避免频繁退出和启动 dev 服务(dev 服务内热更新不会增加启动次数)。
对于不方便执行 edgeone login 的环境,可添加参数 -t, --token(API Token 获取方式见文末)。
执行命令默认会在本地 8088 端口启动一个服务,Pages 函数的服务和 Pages 项目的服务都运行在同一个端口上,无需额外代理。
您可通过 http://localhost:8088/ 访问前端页面,在前端项目中直接使用 Fetch API,访问路径即为 edge-functions、node-functions文件夹下函数文件的路径。
// ./node-functions/api/my-functions.js
fetch('/api/my-functions', {
method: 'POST',
body: JSON.stringify({ data: 'example' }),
})

5. 关联项目

如果需要使用 KV 存储 能力或将控制台已设置的环境变量同步到本地调试,可以执行关联项目命令,按要求输入项目名称,这里的项目名为准备工作中已创建的 Pages 项目名。
edgeone pages link
注意:
对于不方便执行 edgeone login 的环境,可添加参数 -t, --token(API Token 获取方式见文末)。
若您需要 link 的项目不存在,也可以在 CLI 的指引下直接创建新项目。

6. 提交部署

本地开发调试完成后,将项目代码推送到 Git 远端,即可触发 Pages 后台的 CI 构建部署,完成整个开发流程。

7. 本地部署

您也可以选择通过 deploy 命令本地构建部署。如果需要 link已存在的项目,必须为直接上传类型。
edgeone pages deploy
参数说明
<directoryOrZip>: 需要部署的文件夹或 ZIP 包路径。
-n, --name: 需要部署的项目名称,项目不存在则自动创建新项目。
-e, --env: 部署目标环境,可选值: production 或 preview(默认 production)。
注意:
执行 deploy 时,CLI 会自动构建并部署至 Pages,无需指定文件夹;若手动构建,则需将 Pages Functions 相关文件夹及 package.json 放入输出目录(例如 dist),再执行 edgeone pages deploy ./dist
本地部署示例
# 生产环境部署
edgeone pages deploy

# 预览环境部署
edgeone pages deploy -e preview

8. 切换账号

如果需要切换到其他腾讯云账号,可以执行以下命令然后重新登录:
edgeone switch

三、CI / CD 流水线集成

您也可以将 EdgeOne CLI 集成至 CI / CD 流水线以实现自动化部署。
注意:
EdgeOne CLI 的安装方式可参考前文“快速开始 - 安装”。

CI 流水线部署命令

deploy 命令支持不依赖 Git 的方式,直接从 CI / CD 流水线将文件夹或 ZIP 包部署至 EdgeOne Pages。
edgeone pages deploy [<directoryOrZip>] -n <projectName> -t <token> [-e <env>]
参数说明
<directoryOrZip>:需要部署的文件夹或 ZIP 包路径。
-n, --name:需要部署的项目名称,项目不存在则自动创建新项目(必填)。
-t, --token:用于 CI/CD 流水线的 API Token(必填)。
-e, --env:部署目标环境,可选值:production 或 preview(默认 production)。
注意:
执行 deploy 时,CLI 会自动构建并部署项目;若手动构建,则需将 Pages Functions 相关文件夹及 package.json 放入输出目录(如 dist),再执行 edgeone pages deploy ./dist

CI 流水线示例

# 生产环境部署
edgeone pages deploy -n project-name -t $EDGEONE_API_TOKEN

# 预览环境部署
edgeone pages deploy -n project-name -e preview -t $EDGEONE_API_TOKEN

API Token 获取方式

在 CI / CD 流水线中使用部署命令前,需在 EdgeOne Pages 控制台生成 API Token,更多信息请参见 API Token

四、环境变量管理

// 列出控制台配置的所有环境变量
edgeone pages env ls

// 拉取控制台环境变量到本地文件
edgeone pages env pull
// 拉取环境变量可以指定本地文件
edgeone pages env pull -f .env.prod

// 新增环境变量
edgeone pages env add ENV_VAR_KEY env_var_value

// 删除环境变量
edgeone pages env rm ENV_VAR_KEY