通过 GithubActions 实现自动化部署 Hexo

一、在自己电脑上新建一个文件夹,打开 git bash here,输入以下命令

1
ssh-keygen -f github-deploy-key

之后会生成两个文件,

一个私钥文件为:github-deploy-key;

另一个公钥文件为:github-deploy-key.pub

1、在 Hexo 工作目录 Github 源码仓库中指定私钥
步骤:依次打开自己存放博客源码的仓库,点击Settings->展开Secrets and variables->点击Actions->点击New repository secret;填写名称与粘贴私钥。

2、在 Hexo 站点目录 Github pages主页仓库中指定公钥
步骤:依次打开自己存放博客pages主页的仓库,点击Settings->Deploy keys->Add deploy key

Title处设置个名称,key处粘贴公钥。
注意事项:一定要勾选(Allow write access)允许写入后,再保存。

二、创建部署配置

1、在[自己博客根目录]新建.github文件夹,注意开头是有个.的。然后在.github 内新建 workflows 文件夹,再在 workflows 文件夹内新建 autodeploy.yml,在[自己博客根目录]/.github/workflows/autodeploy.yml 里面输入

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
name: 部署 Hexo  GithubPagename: 部署 Hexo  GithubPage
on:
push:
branches: [ "master" ]这里要更改为自己的源码仓库分支名称master或main
jobs:
HexoDeploy:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]这里要更改为自己电脑安装的node.js版本,在终端用node -v查找
steps:
- uses: actions/checkout@v3
- name: 使用 Node.js ${{ matrix.node-version }} 环境
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: 配置 SSH 环境和 Git 环境
env:
ACTION_DEPLOY_KEY: ${{ secrets.这里要接合前面的内容更改为自己源码仓库填写私钥时,所取的名称 }}
run: |
mkdir -p ~/.ssh/
echo "$ACTION_DEPLOY_KEY" > ~/.ssh/id_rsa
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
git config --global user.email "这里要填写自己github注册时所用的邮箱"
git config --global user.name "这里要填写自己gitub的用户名"
- name: 配置 Hexo 环境
run: |
export TZ='Asia/Shanghai'
npm install hexo-cli -g
- name: 下载 Npm 依赖
run: |
npm install
- name: 部署博客
run: |
hexo d

初次提交:

git init #初始化
git remote add origin 这里接着填写自己github的SSH地址
git checkout -b main #main是项目分支名

非初次提交:

git add .
git commit -m “github action update”
git push origin main


欢迎光临本站!


本站主要记录一些个人所学的内容。



通过 GithubActions 实现自动化部署 Hexo
http://example.com/2024/02/27/通过 GithubActions 实现自动化部署 Hexo/
作者
dzq88
发布于
2024年2月27日
许可协议