• 产品简介
  • 快速开始
    • 导入 Git 仓库
    • 从模板开始
    • 直接上传
    • 从 AI 开始
  • 框架指南
    • 前端
      • Vite
      • React
      • Vue
      • 其他框架
    • 后端
    • 全栈
      • Next.js
      • Nuxt
      • Astro
      • React Router
      • SvelteKit
      • TanStack Start
      • Vike
    • 自定义 404 页面
  • 项目指南
    • 项目管理
    • edgeone.json
    • 缓存配置
    • 错误码
  • 构建指南
  • 部署指南
    • 概览
    • 触发部署
    • 管理部署
    • 部署按钮
    • 使用 Github Action
    • 使用 Gitlab CI/CD
    • 使用 CNB 插件
    • 使用 IDE 插件
    • 使用 CodeBuddy IDE
  • 域名管理
    • 概览
    • 自定义域名
    • 配置 HTTPS 证书
      • 概览
      • 申请免费证书
      • 使用 SSL 托管证书
    • 配置 DNS 的 CNAME 记录
  • 可观测性
    • 概览
    • 指标分析
    • 日志分析
  • Pages Functions
    • 概览
    • Edge Functions
    • Cloud Functions
      • 概览
      • Node Functions
  • 中间件
  • KV 存储
  • 边缘 AI
  • API Token
  • EdgeOne CLI
  • Pages MCP
  • 消息通知
  • 集成指南
    • AI
      • 对话型大模型集成
      • 图片大模型集成
    • 数据库
      • Supabase 集成
      • Pages KV 集成
    • 电商
      • Shopify 集成
      • WooCommerce 集成
    • 支付
      • Stripe 集成
      • Paddle 集成
    • CMS
      • WordPress 集成
      • Contentful 集成
      • Sanity 集成
      • Payload 集成
    • 身份验证
      • Supabase 集成
      • Clerk 集成
  • 最佳实践
    • 使用通用大模型快速搭建 AI 应用
    • 使用边缘 AI 模型快速搭建对话型 AI 站点
    • 使用 Shopify 搭建电商平台
    • 使用 Supabase 和 Stripe 搭建 SaaS 站点
    • 如何快速搭建公司品牌站点
    • 如何快速搭建博客站点
  • 迁移指南
    • 从 Vercel 迁移至 EdgeOne Pages
    • 从 Cloudflare Pages 迁移至 EdgeOne Pages
    • 从 Netlify 迁移至 EdgeOne Pages
  • 排障指南
  • 常见问题
  • 联系我们
  • 产品动态

使用 Gitlab CI/CD

通过本章节指南,你可以使用 GitLab CI/CD 实现自动构建并部署项目到 EdgeOne Pages。

配置 GitLab CI/CD 变量

1. 进入 GitLab 仓库页面,点击左侧菜单栏的 Settings > CI/CD
2. 展开 Variables 部分,点击 Add variable
3. 配置以下变量:
Key: EDGEONE_API_TOKEN
Value: 从 EdgeOne Pages 控制台获取的 API Token
Type: Variable
Flags: 勾选 Mask variable(隐藏变量值)和 Protect variable(可选,仅在受保护分支使用)
EDGEONE_API_TOKEN 的获取可参考文档 API Token

创建 GitLab CI/CD 配置文件

在你的 GitLab 仓库根目录下创建一个名为 .gitlab-ci.yml 的文件,并添加以下内容:
stages:
- deploy

variables:
PROJECT_NAME: "my-project" # 修改为你的项目名称

# 缓存 node_modules 加速构建(可选)
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- node_modules/

# 场景一:代码合入前部署预览链接 (Preview)
# 当产生 Merge Request 时触发
deploy-preview:
image: node:22.11.0 # 选择适合的 Node.js 版本
stage: deploy
only:
- merge_requests
script:
- npm install
- npm run build
- npx edgeone pages deploy -n $PROJECT_NAME -t $EDGEONE_API_TOKEN -e preview

# 场景二:部署主干代码变更 (Production)
# 当代码推送到 main 分支时触发
deploy-production:
image: node:22.11.0 # 选择适合的 Node.js 版本
stage: deploy
only:
- main
script:
- npm install
- npm run build
- npx edgeone pages deploy -n $PROJECT_NAME -t $EDGEONE_API_TOKEN -e production

配置说明

EdgeOne CLI 部署命令

npx edgeone pages deploy -n <项目名称> -t <API_TOKEN> -e <环境>
参数
说明
-n <项目名称>
EdgeOne Pages 项目名称,如项目不存在会自动创建
-t <API_TOKEN>
EdgeOne Pages API Token
-e <环境>
部署环境,可选 preview(预览)或 production(生产)

部署场景说明

场景
触发条件
环境参数
说明
预览部署
Merge Request
-e preview
每次 MR 都会生成独立的预览链接,用于代码审查时查看效果
生产部署
推送到 main 分支
-e production
代码合入后自动部署到生产环境,用于正式发布,访问量大、稳定性要求高

工作流程

配置完成后,GitLab CI/CD 将按以下流程自动执行:

预览环境(Merge Request)

1. 触发条件:当创建或更新 Merge Request 时自动触发
2. 执行流程:安装依赖 → 构建项目 → 部署到预览环境
3. 结果:生成预览链接,可在 MR 中查看效果

生产环境(Main 分支)

1. 触发条件:当代码推送到 main 分支时自动触发
2. 执行流程:安装依赖 → 构建项目 → 部署到生产环境
3. 结果:更新生产环境站点

查看部署结果

1. 在 GitLab 仓库页面,点击左侧菜单栏的 Build > Pipelines 查看流水线状态。
2. 点击具体的流水线查看各阶段执行详情。
3. 部署成功后,访问 EdgeOne Pages 控制台 查看部署的项目和访问域名。

常见问题

Q: 流水线执行失败,提示权限错误?

A: 请检查 EDGEONE_API_TOKEN 变量是否正确配置,并确保 Token 未过期。

Q: 如何部署到现有项目?

A: 在部署命令中使用 -n 参数指定已存在的项目名称即可,EdgeOne Pages 会自动更新该项目的部署。

相关文档

ai-agent
你可以这样问我
如何开始使用 EdgeOne Pages?