使用hugo這個插件進行hugo博客的搭建,採用zzo的博客主題,基於github以及其action搭建一個靜態博客! ...
HUGO + Github + Github Action持續集成部署個人博客
HUGO本地環境
首先在HUGO的官網下載Hugo的Windows安裝包,然後將路徑添加到環境變數即可。
step1:下載hugo
step2:配置環境變數
HUGO站點配置及主題配置
創建站點
在目錄下直接輸入下麵的代碼即可創建一個名為blog的hugo站點(註意:新建的站點是沒有自帶主題的)
hugo new site blog
或者進入blog文件夾內直接輸入以下語句:
hugo new site .
下載主題
可以在hugo theme下載主題,然後根據主題的文檔進行配置
放到站點文件夾themes內,配置config.toml
本地測試運行
輸入hugo server
測試
Github配置
創建站點倉庫並且設置GithubPage
可以在Setting中看見如下:
創建一個存儲項目的倉庫
配置Github Action
首先在項目倉庫點擊action,選擇Simple workflow,輸入一下的配置代碼:
name: CI #自動化的名稱
on:
push: # push的時候觸發
branches: # 那些分支需要觸發
- master
jobs:
build:
runs-on: ubuntu-latest # 鏡像市場
steps:
- name: checkout # 步驟的名稱
uses: actions/checkout@v1 #軟體市場的名稱
with: # 參數
submodules: true
- name: Setup Hugo
uses: peaceiris/[email protected]
with:
hugo-version: '0.64.1'
extended: true
- name: Build
run: hugo -D
- name: Deploy
uses: peaceiris/[email protected]
env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
EXTERNAL_REPOSITORY: redisread/redisread.github.io
PUBLISH_BRANCH: master
PUBLISH_DIR: ./public
準備部署,我們開發的項目及github pages實際是分開的,一個用於保存項目,相當於源代碼,另外一個用於保存最終的網頁文件。
-
使用git生成ssh key(相當於生成對密鑰)
ssh-keygen -t rsa -b 4096 -C "$(git config user.email)" -f gh-pages -N "" # You will get 2 files: # gh-pages.pub (public key) # gh-pages (private key)
假設 開發項目為 HUGO_blog 部署的項目為 redisread.github.io
-
打開HUGO_blog倉庫的settings,再點擊Secrets,然後添加剛剛生成的私鑰,name為ACTIONS_DEPLOY_KEY
-
同理,打開redisread.github.io,點擊Deploy keys,添加公鑰,Allow write access一定要勾上,否則會無法提交
然後,你就可以提交代碼了,push成功後,打開倉庫actions,至此部署成功,大功告成!