使用GithubAction+Hugo自动化静态博客
目录
综合情况考虑决定不续费服务器使用github.io来写博客,因为服务器基本处于一个闲置状态,如果不是因为写博客可能完全就荒废了,日常需要的各种特殊情况都能通过内网穿透解决,所以决定研究静态博客
安装 Hugo
进入 官网
ubuntu安装
apt install hugo
新建站点
hugo new site hello
进入站点 cd hello
站点目录结构
ls
▸ archetypes/
▸ content/
▸ layouts/
▸ static/
config.toml
创建文章
hugo new hello.md
正文内容
+++
date = "2015-10-25T08:36:54-07:00"
draft = true
title = "about"
+++
正文内容
编译静态文件
hugo -D
启动http预览
hugo server -D
安装皮肤/主题
cd theme
git clone https://github.com/spf13/hyde.git
vim config.toml
theme = "hyde"
更多皮肤在这里 https://themes.gohugo.io/
配置GitHubAction
在.github/workflows
创建文件 hg-action.yml
name: GitHub Pages
on:
push:
branches:
- main # Set a branch to deploy
pull_request:
jobs:
deploy:
runs-on: ubuntu-20.04
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
- uses: actions/checkout@v2
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: '0.85.0'
# extended: true
- name: Build
run: hugo -D
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
if: ${{ github.ref == 'refs/heads/main' }}
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
具体内容自行了解一下 https://github.com/peaceiris/actions-gh-pages
配置Gtihub变量
with:
github_token: ${{ secrets.GITHUB_TOKEN }} //在个人设置SSH里面添加一个名称为GITHUB_TOKEN的密钥
publish_dir: ./public
完成
配置完成后 后面每次推送都会通过GithubAction编译好静态文件到分支下 gh-pages
, 在将仓库设置静态访问分支