Hexo 博客搭建过程实录
创建本地博客 blog
安装 Hexo 脚手架
npm install -g hexo-cli
安装之后可以使用 hexo 对博客命令操作
- 创建 blog:
hexo init 文件夹
- 创建文章:
hexo new 文章名
- 生成静态文件:
hexo generate
简写:hexo g
- 清除已生成缓存:
hexo clean
- 启动本地服务:
hexo server
简写:hexo s
默认监听 4000 端口 - 部署:
hexo deploy
简写:hexo d
- 生成静态文件并部署:
hexo g -d
创建博客
hexo init blog
cd blog
hexo g
hexo s
访问 http://localhost:4000 查看本地博客
配置 blog 部署 Github Pages
创建 github.io 仓库
输入仓库名,仓库名以用户名开头,以 github.io
结尾
修改部署文件
创建成功后,打开刚刚使用
hexo init blog
命令生成的 blog 文件夹修改
_config.yml
文件
repo 填入刚刚创建的 GitHub 仓库地址,建议填写 ssh 仓库地址,https 地址也可部署到 Github Pages
# 清理缓存 hexo clean # 部署 hexo g -d
GitHub Actions 自动部署
创建 blog 仓库
创建另外一个 GitHub 私有仓库 blog,用来存放 hexo 项目并触发部署
创建 ssh 密钥
ssh-keygen -f .ssh/github-deploy-key
.ssh 文件夹下会有 github-deploy-key 和 github-deploy-key.pub 两个文件。
配置部署密钥
- 打开 blog 仓库设置,Settings -> Secrets -> Add a new secret
- 在 Name 输入框填写 HEXO_DEPLOY_KEY。
- 在 Value 输入框填写 github-deploy-key 文件内容。
- 打开 用户名.github.io 仓库设置,
- 在 Title 输入框填写 HEXO_DEPLOY_PUB。
- 在 Key 输入框填写 github-deploy-key.pub 文件内容。
- 勾选 Allow write access 选项。
编写 GitHub Actions
在 hexo 博客文件夹下创建 .github/workflows/deploy.yml 文件,目录结构如下:
blog
└── .github
└── workflows
└── deploy.yml
编辑 deploy.yml 文件:
name: Deploy GitHub Pages
on:
push:
branches:
- master
# 修改 GitHub 用户名及邮箱才能正确部署
env:
GIT_USER: jiz4oh
GIT_EMAIL: [email protected]
jobs:
build-and-deploy:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [ 10.x ]
steps:
- name: Checkout
uses: actions/checkout@v2
with:
persist-credentials: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Configuration environment
env:
HEXO_DEPLOY_PRI: ${{secrets.HEXO_DEPLOY_KEY}}
run: |
mkdir -p ~/.ssh/
echo "$HEXO_DEPLOY_PRI" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
git config --global user.name $GIT_USER
git config --global user.email $GIT_EMAIL
- name: Install dependencies
run: npm i
- name: Install hexo-cli
run: npm i -g hexo-cli
- name: Clean
run: hexo clean
- name: Build & Deploy
run: hexo g -d
测试
在 hexo 博客文件夹下,执行
# 配置 git 账户
git config --global user.name 用户名
git config --global user.email 邮箱
git remote add origin BLOG仓库地址
git push --set-upstream origin master