Hugo配置

· ☕ 2 分钟 · 👻 Victor
🏷️
  • #Hugo
  • #Github
  • HUGO + Github + Github Action持续集成部署个人博客

    HUGO本地环境

    首先在HUGO的官网下载Hugo的Windows安装包,然后将路径添加到环境变量即可。

    step1:下载hugo

    step2:配置环境变量

    HUGO站点配置及主题配置

    创建站点

    在目录下直接输入下面的代码即可创建一个名为blog的hugo站点(注意:新建的站点是没有自带主题的)

    1
    
    hugo new site blog
    

    或者进入blog文件夹内直接输入以下语句:

    1
    
    hugo new site .
    

    下载主题

    可以在hugo theme下载主题,然后根据主题的文档进行配置

    放到站点文件夹themes内,配置config.toml

    本地测试运行

    输入hugo server测试

    Github配置

    创建站点仓库并且设置GithubPage

    可以在Setting中看见如下:

    创建一个存储项目的仓库

    配置Github Action

    首先在项目仓库点击action,选择Simple workflow,输入一下的配置代码:

     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
    
    name: CI #自动化的名称
    on:
      push: # push的时候触发
        branches: # 那些分支需要触发
          - master
    jobs:
      build:
        runs-on: ubuntu-latest # 镜像市场
        steps:
          - name: checkout # 步骤的名称
            uses: actions/[email protected] #软件市场的名称
            with: # 参数
              submodules: true
          - name: Setup Hugo
            uses: peaceiris/[email protected].2.2
            with:
              hugo-version: '0.64.1'
              extended: true
          - name: Build
            run: hugo -D
          - name: Deploy
            uses: peaceiris/[email protected].5.1
            env:
              ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
              EXTERNAL_REPOSITORY: redisread/redisread.github.io
              PUBLISH_BRANCH: master
              PUBLISH_DIR: ./public
    
    

    准备部署,我们开发的项目及github pages实际是分开的,一个用于保存项目,相当于源代码,另外一个用于保存最终的网页文件。

    1. 使用git生成ssh key(相当于生成对密钥)

      1
      2
      3
      4
      
      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

    2. 打开HUGO_blog仓库的settings,再点击Secrets,然后添加刚刚生成的私钥,name为ACTIONS_DEPLOY_KEY

    3. 同理,打开redisread.github.io,点击Deploy keys,添加公钥,Allow write access一定要勾上,否则会无法提交

    然后,你就可以提交代码了,push成功后,打开仓库actions,至此部署成功,大功告成!

    finish

    分享

    redisread
    作者
    Victor
    Full Stack