使用 Github Action 部署 Jekyll 静态站点到 EdgeOne
由于EdgeOne Pages 没有提供 Jekyll 构建功能,所以我们使用 Github Action 进行部署,以下是部署流程
创建 EdgeOne 站点 和 API Token
- 登录EdgeOne控制台
- 选择
Pages
点击创建项目
,选择直接上传
,随便选取一个 html 文件即可. - 选择
Pages
选择API Token
,点击创建API Token
,设置描述和过期时间.
设置 Github 仓库 Secret
- 访问 GitHub 仓库页面
- 前往
Settings
>Secrets and variables
>Actions
- 点击
New repository secret
- 在
Name
输入EDGEONE_API_TOKEN
,在Secret
输入 EdgeOne API token 的值
Jekyll 构建配置
- 在项目根目录创建
.github/workflows/main.yml
文件 - 配置自动构建和部署流程:
name: Build and Deploy Jekyll site to EdgeOne Pages
on:
push:
branches:
- main
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout source
uses: actions/checkout@v4
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.1'
- name: Install dependencies
run: |
gem install bundler
bundle install
- name: Build Jekyll site
run: bundle exec jekyll build
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22.11.0'
- name: Deploy to EdgeOne Pages
run: |
REPO_NAME=$(echo "${GITHUB_REPOSITORY}" | cut -d '/' -f2)
npx edgeone pages deploy ./_site -n "$REPO_NAME" -t $
GitHub Actions 构建
当代码推送到 main 分支时,会触发以下构建和部署过程:
- checkout 到目标仓库
- 设置 Ruby
- 安装项目依赖
- 构建项目
- 部署到 EdgeOne Pages
域名配置
- 在 EdgeOne Pages 控制台进入项目设置
- 添加自定义域名
- 配置 CNAME 记录指向 EdgeOne 提供的域名
- 等待 DNS 解析生效