使用GitHub Actions部署Hexo博客
Created At :
Count:638
post.views :
前言
一直都在用Hexo写博客,但是每次都需要将博客源码拉到本地,然后安装Node.js、Git等环境,之后再写博客就忘了要写什么内容了;
所以这次折腾一下使用GitHub Actions来自动构建和部署Hexo内容。
准备
需要准备两个Git仓库,一个是博客源码仓库,一个是静态页面仓库;参考:使用GitHub Pages托管博客;
博客源码仓库为:blog,可以为私有的,保护一下私有文件;
静态页面仓库为:xxx.github.io,必须为公开的,存放Hexo生成的静态页面;
开始
生成密钥
bash命令创建一个新的SSH密钥:
1
| $ ssh-keygen -f hexo-deploy-key
|
会在当前文件夹下生成两个文件:hexo-deploy-key
hexo-deploy-key.pub
登录GitHub网站,找到博客源码仓库;添加新的Secrets,在:Settings -> Secrets -> Add a new secret:
1 2
| Name填写:HEXO_DEPLOY_SECRET,下边会用到; Value填写:hexo-deploy-key文件中的全部内容;
|
找到静态页面仓库;添加新的Deploy key,在:Settings -> Deploy keys -> Add new:
1 2 3 4 5
| Title随便填写; Value填写:hexo-deploy-key.pub文件中的全部内容; 勾选“Allow Write Access”; 创建GitHub Actions 在博客源码仓库根目录下,创建.github/workflows/hexo_deploy.yml文件;此文件为GitHub Actions所使用的文件;
|
hexo_deploy.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
| name: HEXO_DEPLOY on: push: branches:
- master jobs: build: runs-on: ubuntu-latest
steps:
- name: Checkout source uses: actions/checkout@v1 with: ref: master - name: Use Node.js ${{ matrix.node_version }} uses: actions/setup-node@v1 with: version: ${{ matrix.node_version }} - name: Setup hexo env: ACTION_DEPLOY_KEY: ${{ secrets.HEXO_DEPLOY_SECRET }} run: | mkdir -p ~/.ssh/ echo "$ACTION_DEPLOY_KEY" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa ssh-keyscan github.com >> ~/.ssh/known_hosts git config --global user.email "george674834080@gmail.com" git config --global user.name "im_wower" npm install hexo-cli -g npm install - name: Hexo deploy run: | hexo clean hexo d
|
- name随便写;
- branches为博客源码仓库的分支,即:提交代码到此分支后,会自动触发部署;这里使用的是master分支;
修改博客源码仓库根目录的_config.yml文件,修改deploy节点为使用SSH的方式:
1 2 3 4
| deploy: type: git repo: git@github.com:yunlongwen/yunlongwen.github.io.git branch: master
|
提交代码
本地或使用GitHub网页版,修改博客源码仓库的文件,并提交到master分支;
1 2 3 4 5
| cd imwower-blog/source/_posts touch xxx.md git add . git commit -m "add new post" git push origin
|
提交代码后,会自动触发部署;登录GitHub查看部署状态:
查看博客:
github.100kwhy.cn
参考链接
利用 Github Actions 自动部署 Hexo 博客
GitHub Actions 自动部署 Hexo
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 350394277@qq.com
Title:使用GitHub Actions部署Hexo博客
Count:638
Author:Yunlong Wen
Created At:2023-12-17, 14:18:27
Updated At:2023-12-17, 14:18:27