Hexo 自动部署

对于静态博客来说,Hexo是一款很受欢迎的博客生成器。其拥有数百的主题和插件,方便我们部署和自定义博客内容。然而,很多生成器都有一个跟明显的缺点,当网站的文章越来越多时,生成所需要的时间也越来越久。如果电脑效能差的话,部署时间则会更加的久。 为了解决这个问题,采用自动化部署是一个绝佳的选择。现如今提供自动化部署的平台越来越多。像Travis CI,Github Actions。我们只需要把Hexo的目录推送到GitHub去,相关平台监测到对应的Repositories发佈变化,就会自动去执行编译,并把编译好的内容发布到博客Repositories去。

获取Coding Token

项目设置 --> 开发者选项 --> 项目令牌

权限要给全

获取Github Token

Personal settings --> Developer settings --> Personal access tokens

权限给repo,public repo,token要存好,不然没了只能重新获取

创建Actions

建立一个私有仓库,上传Hexo源代码
在Hexo目录的仓库,点击Actions

然后点击Set up a workflow yourself

输入以下代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
name: 自动部署 Hexo

on:
push:
branches:
- master

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]

steps:
- name: 开始运行
uses: actions/checkout@v1

- name: 设置 Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}

- name: 安装 Hexo CI
run:
export TZ='Asia/Shanghai'
npm install hexo-cli -g

- name: 缓存
uses: actions/cache@v1
id: cache-dependencies
with:
path: node_modules
key: ${{runner.OS}}-${{hashFiles('**/package-lock.json')}}

- name: 安装插件
if: steps.cache-dependencies.outputs.cache-hit != 'true'
run:
npm install

- name: 部署博客
run:
hexo clean && hexo g && hexo douban && gulp
cd ./public
git init
git config user.name "${{secrets.GIT_NAME}}"
git config user.email "${{secrets.GIT_EMAIL}}"
git add .
git commit -m "Update"
git push --force --quiet "https://${{secrets.GH_TOKEN}}@${{secrets.GH_REF}}" master:master
git push --force --quiet "https://${{secrets.CD_TOKEN}}@${{secrets.CD_REF}}" master:master

点击Start commit

设置Secrets

为了保护重要的资料,需要把这些资料设置到Secrets里,然后通过$引用。
在Settings --> Secrets

这里需要设置6个Secrets

名称内容
CD_REF要提交到的Coding仓库地址
CD_TOKENCoding Token 格式为 用户名:密匙
GH_REF要提交到的 Github 仓库地址
GH_TOKENGithub Token
GIT_EMAILGit用户邮箱
GIT_NAMEGit用户名

运行

随便修改一个东西,比如提交一篇文章,就可以看到变化了

鸣谢

1.通过travis-ci或者GitHub Actions自动化部署GitHub Pages和Coding Pages
2.Github Actions 自动部署 Hexo 脚本

作者

啊不都

发布于

2020-05-19

更新于

2022-06-23

许可协议

CC BY 4.0

评论

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×