0. 前言

一直有个域名,平时只是用于作为伪装域名,于是尝试搭建个人博客,实现思路是使用 Hugo + Github Pages。

目前有三个主流的静态博客生成器Jekyll、Hexo 和 Hugo

1. Jekyll

- Jekyll 是最早流行的静态博客生成器之一,广泛用于 GitHub Pages,GitHub Pages 官方支持
- Jekyll 是用 Ruby 编写的,需要安装 Ruby 环境来运行。

2. Hexo

- Hexo 使用 Node.js 进行构建,速度较快,插件丰富。

3. Hugo

- Hugo 是用 Go 语言编写的,是目前速度最快的静态博客生成器,尤其适合有大量内容的网站。
- 支持多语言、分类、标签等高级功能,适合需要组织大量内容的用户。
- Hugo 的配置文件和结构非常简洁,易于上手。

我本身就是写Go的,遂选择了Hugo

1. 准备工作

1.1 域名配置

  • DNS 设置:在域名服务商处设置了以下 DNS 记录:
    • CNAME 记录指向 xxx.github.io

需要注意要在Github的Setting里设置Pages的CNAME

1.2 Hugo 安装与配置

  • 安装 Hugo:在本地机器上通过 Homebrew 安装了 Hugo:
    brew install hugo
    

2. 配置博客

2.1 创建一个 Hugo 网站

hugo new site myblog

cd myblog

2.2 选择并安装主题

我选择了简洁风格的PaperMod主题

git init

git submodule add https://github.com/theNewDynamic/gohugo-theme-paperMod.git themes/paperMod

2.3 配置 config.yml

hugo默认的配置文件叫hugo.toml,PaperMod官方推荐的配置文件是yaml文件,于是删掉原始配置文件,自己重建了一个config.yml,并对主题进行设置

theme: "paperMod"

2.4 创建内容

  1. 创建一篇新的文章:
hugo new posts/first-post.md
  1. 使用Markdown语法编辑该md文件,修改完成后,将 draft: true 修改为 draft: false,以便发布该文章。

2.5 本地预览

  1. 启动本地服务器:
 hugo server
  1. 打开浏览器,访问 http://localhost:1313/ 即可预览博客。

3. 部署服务器

执行指令 hugo,会将所有静态文件放置于 /public目录下,将该目录下的所有文件推送至远程仓库,即可完成代码的托管

cd public
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/yourusername/yourusername.github.io.git
git push -u origin main

4. 发布新内容

4.1 创建新的文章

hugo new posts/new-post.md

4.2 编辑内容并将其发布

hugo

4.3 推送更新到 GitHub Pages