本文完全由 Hermes Agent(AI 助手)在对话中写作并自动部署,全程无需手动操作服务器。

前言

你是不是也想拥有一个自己的博客,但不想花钱买云服务器?

今天教你零成本搭建一个个人博客,只需要:

  • 一个 GitHub 账号(免费)
  • 一个 Cloudflare 账号(免费,还能管理域名)
  • 一个域名(我用的 ankang.uk,一年几十块,也可以先用 GitHub 提供的免费子域名)

架构非常简单:

你的电脑 (写文章) → Hugo (生成静态页) → GitHub Pages (托管) → Cloudflare (DNS + CDN) → 读者

全程不需要云服务器!不需要 Nginx!不需要维护!


一、总览:Hermes Agent 是什么角色?

整个搭建过程,我都是通过 Hermes Agent 在微信上对话完成的。

Hermes Agent 是一个 AI 助手,可以直接在终端执行命令读写文件搜索信息操作 Git调用各种 API——也就是说,你只需要说话,它就能帮你把博客从零搭到上线。

它跑在 WSL(Windows Subsystem for Linux) 里,但无论你用什么系统(Mac/Linux/Windows),只要装好 Hugo 就能跟着做。


二、准备工作

1. GitHub 仓库

登录 GitHub,创建一个仓库,命名为 你的用户名.github.io(比如我的用户名是 moonpigcater,仓库就是 moonpigcater.github.io)。

这个命名是 GitHub Pages 的约定,它会自动将这个仓库发布为网站。

2. SSH 密钥配置(WSL/Linux/Mac)

本地需要能通过 SSH 推送到 GitHub:

# 生成 SSH 密钥
ssh-keygen -t ed25519 -C "your_email@example.com"

# 查看公钥
cat ~/.ssh/id_ed25519.pub

把公钥复制出来,去 GitHub → Settings → SSH and GPG keys → New SSH Key,粘贴保存。

测试连接:

ssh -T git@github.com
# 看到 "Hi yourname! You've successfully authenticated" 就说明成功了

3. Git 配置

git config --global user.name "你的GitHub用户名"
git config --global user.email "你的邮箱"

三、安装 Hugo 并初始化博客

Hugo 是用 Go 语言写的静态网站生成器,非常快——生成几百页的博客只需要几十毫秒。

安装 Hugo

WSL/Linux(推荐用 snap):

snap install hugo --channel=extended

Mac:

brew install hugo

Windows:https://gohugo.io/installation/ 下载 exe 安装包

验证安装:

hugo version
# hugo v0.161.1+extended

初始化站点

# 创建博客目录
hugo new site blog --format yaml
cd blog

# 安装一个主题——我用的 PaperMod,最流行的 Hugo 主题
git init
git submodule add https://github.com/adityatelange/hugo-PaperMod themes/PaperMod

配置博客

编辑 hugo.yaml,这是博客的核心配置文件:

baseURL: https://你的域名/
locale: zh-CN
title: 你的博客名称
theme: PaperMod
pagination:
  pagerSize: 10
enableRobotsTXT: true

params:
  env: production
  title: 你的博客名称
  description: "一句话描述你的博客"
  author: 你的名字
  DateFormat: "2006-01-02"
  defaultTheme: auto
  ShowReadingTime: true
  ShowPostNavLinks: true
  ShowCodeCopyButtons: true
  ShowWordCount: true

  homeInfoParams:
    Title: "你好,我是 XXX"
    Content: >
      一段自我介绍。

  socialIcons:
    - name: github
      url: "https://github.com/你的用户名"

menu:
  main:
    - identifier: archives
      name: 归档
      url: /archives/
      weight: 10
    - identifier: tags
      name: 标签
      url: /tags/
      weight: 20
    - identifier: search
      name: 搜索
      url: /search/
      weight: 30
    - identifier: about
      name: 关于
      url: /about/
      weight: 40

outputs:
  home:
    - HTML
    - RSS
    - JSON

创建基本页面

# 关于页面
hugo new content about/index.md

# 搜索页面
hugo new content search/index.md

# 第一篇文章
hugo new content posts/我的第一篇文章/index.md

编辑这些 markdown 文件,注意把 draft: true 改成 draft: false,否则不会发布。

本地预览

hugo server --buildDrafts

打开浏览器访问 http://localhost:1313/,就可以实时看到博客效果了!


四、部署到 GitHub Pages

安装 Git 部署工具

Hugo 生成的是纯静态 HTML 文件,放在 public/ 目录。我们需要把它推送到 GitHub 仓库。

# 构建网站
hugo

# 把 public 目录的内容复制到 ghpages 仓库目录
rm -rf /tmp/ghpages/*
cp -r public/* /tmp/ghpages/
echo '你的域名' > /tmp/ghpages/CNAME   # CNAME 文件告诉 GitHub 你的自定义域名

# 提交推送
cd /tmp/ghpages
git add -A
git commit -m '更新博客'
git push origin main

注意:第一次需要先 git clone 你的 用户名.github.io 仓库到 /tmp/ghpages

GitHub Pages 设置

去 GitHub 仓库 → Settings → Pages:

  • Source 选择 “Deploy from a branch”
  • Branch 选择 main,目录选 / (root)
  • Custom domain 填你的域名(如 blog.ankang.uk
  • 等几分钟,GitHub 会自动颁发 SSL 证书

这时候通过 https://你的用户名.github.io 就可以访问了。


五、绑定自定义域名(Cloudflare)

为什么用 Cloudflare?

Cloudflare 提供免费的 DNS 解析、CDN 加速、DDoS 防护。域名在哪儿买都可以把 DNS 托管到 Cloudflare。

添加 DNS 记录

在 Cloudflare Dashboard → 你的域名 → DNS → 添加记录:

类型名称Proxy 状态
CNAMEblog你的用户名.github.io🔘 DNS only(灰色云)

⚠️ 关键:必须选 灰色云(DNS only)! 如果开了橙色云(Proxied),GitHub Pages 的 SSL 证书会跟你的域名不匹配,浏览器会报「连接不安全」。

等待生效

DNS 生效通常需要 1-10 分钟。之后访问 https://blog.你的域名 就能看到博客了!

如果浏览器报「不安全」,先试一下无痕模式——可能是浏览器缓存了旧的证书信息,不是真的 SSL 问题


六、日常写文章流程

以后每次写新文章只需要三步:

1. 创建文章

cd ~/blog
hugo new content posts/文章标题/index.md

2. 编辑内容

用任意文本编辑器打开 content/posts/文章标题/index.md,在 --- 之间的 Front Matter 后面写正文。支持 Markdown 语法:

---
title: "文章标题"
date: 2026-05-15T14:00:00+08:00
draft: false
tags:
  - 标签1
  - 标签2
categories:
  - 分类名
---

这里写正文,支持 **加粗**、*斜体*、`代码`、图片、链接等。

### 二级标题

一段文字...

3. 构建并部署

hugo
cp -r public/* /tmp/ghpages/
echo '你的域名' > /tmp/ghpages/CNAME
cd /tmp/ghpages
git add -A && git commit -m '新文章:文章标题' && git push

搞定!等 1 分钟,新文章就上线了。

高级玩法: 如果你像我一样用 Hermes Agent,上面所有命令都可以在微信上说完就自动执行。甚至可以做到「帮我把刚才的对话总结成文章发到博客」——就像你现在看到的这篇!


七、常见问题

Q:GitHub Pages 打不开?

检查仓库名是不是 你的用户名.github.io,大小写要一致。推送后等 1-2 分钟。

Q:浏览器报「连接不安全」?

先试无痕模式。如果无痕模式正常,是浏览器缓存问题。如果不正常,检查 Cloudflare DNS 是不是开了橙色云(需要灰色云)。

Q:中文显示繁体?

Hugo 的 locale 配置:

  • zh-CN = 简体
  • zh-TW = 繁体
  • zh-Hans/zh = 简体(取决于主题支持情况)

改了 locale 后导航栏菜单名还在 hugo.yamlmenu 配置里,需要手动改成简体。

Q:想换主题?

https://themes.gohugo.io/ 挑选,然后:

git submodule add 主题的Git地址 themes/主题名

再修改 hugo.yamltheme 字段。不同主题配置项不同,看主题文档。


八、总结:优势一览

对比项传统服务器博客本方案
费用¥30-100/月免费(仅域名年费)
维护要管 Nginx、SSL、安全补丁零维护
速度取决于服务器配置GitHub CDN 全球加速
可扩展可以装数据库、评论区可接 Disqus、Giscus 等第三方评论
写文章后台编辑器本地 Markdown,Git 版本管理
抗攻击需要自己配置Cloudflare 自带防护

最后,本文就是一个活生生的例子——AI 助手帮你从零搭建博客,还能帮你写文章发布。如果你也想拥有这样一个 Hermes Agent,可以关注项目官网了解更多!

Happy blogging! 🚀