本文完全由 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 状态 |
|---|---|---|---|
| CNAME | blog | 你的用户名.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.yaml 的 menu 配置里,需要手动改成简体。
Q:想换主题?
去 https://themes.gohugo.io/ 挑选,然后:
git submodule add 主题的Git地址 themes/主题名
再修改 hugo.yaml 的 theme 字段。不同主题配置项不同,看主题文档。
八、总结:优势一览
| 对比项 | 传统服务器博客 | 本方案 |
|---|---|---|
| 费用 | ¥30-100/月 | 免费(仅域名年费) |
| 维护 | 要管 Nginx、SSL、安全补丁 | 零维护 |
| 速度 | 取决于服务器配置 | GitHub CDN 全球加速 |
| 可扩展 | 可以装数据库、评论区 | 可接 Disqus、Giscus 等第三方评论 |
| 写文章 | 后台编辑器 | 本地 Markdown,Git 版本管理 |
| 抗攻击 | 需要自己配置 | Cloudflare 自带防护 |
最后,本文就是一个活生生的例子——AI 助手帮你从零搭建博客,还能帮你写文章发布。如果你也想拥有这样一个 Hermes Agent,可以关注项目官网了解更多!
Happy blogging! 🚀