博客上线了。这是第一篇,主要是拿来验证整套发布链路能不能正常工作:Obsidian 写 Markdown → git push → 服务器自动构建 → 公网 HTTPS 访问。

这套站怎么搭的

我在选型上走的是轻量路线:

  • 写作端:Obsidian,所有内容都是纯 Markdown 文件
  • 生成器:Quartz v5,原生支持 Obsidian 语法([[双链]]、![[嵌入]]、callout 等)
  • 托管:自建 Gitea,源码就是博客源
  • 部署:Gitea 的 post-receive hook,push 后服务器自动 npm ci + npx quartz build,再 rsync 到 web 根目录
  • Web 服务:Caddy 自动签发 HTTPS 证书

整套发布动作其实只有一条命令:

git add . && git commit -m "新文章" && git push

push 完等十几秒刷新页面,内容就上线了。

验证各种渲染

图片(Obsidian 嵌入语法)

下面这张图我用 Obsidian 的 ![[placeholder.png]] 嵌入语法写,Quartz 默认插件能正确解析:

Callout

这是一个 Note 类型的 Callout

就是 Obsidian 风格的提示框,Quartz 原生支持。

也可以折叠

> [!tip]- 折叠标题(标题后面加 - 就默认折叠)

代码块

def hello(name: str) -> str:
    return f"Hello, {name}!"
 
print(hello("世界"))

双链

你可以回 本篇 看看,或者去 站点首页。

列表与任务

  • 博客框架搭建完成
  • 自动部署流水线跑通
  • 写更多内容……

接下来

这个博客主要还是给我自己用的,用来记录开发经验、AI 工程的实践和踩坑。如果哪天你看到了这里(可能是未来的我,也可能只是随便路过的访客),希望这些笔记对你有用。

下一篇见 🚀