經(jīng)常有朋友問我,之前你寫的那篇XXX文章叫什么來著,想不起來了。嗨,別說你們,就連我自己有時(shí)候想搜一下之前在公眾號(hào)的文章,都是有點(diǎn)兒費(fèi)勁的。當(dāng)然,這都怪公眾號(hào)的搜索太垃圾,以及生態(tài)太封閉。
所以,老馮決定專門開一個(gè)博客站點(diǎn),把之前的文章都放上去。不僅可以很方便的被搜索引擎檢索到,而且站內(nèi)本身就有離線全文檢索功能。這次選擇了 Hugo + Blowfish 主題,最終成品的效果還是相當(dāng)不錯(cuò)的。
當(dāng)然,既然干都干了,我就干脆把自己所有的開源項(xiàng)目文檔都用 hugo 修繕了一番 (當(dāng)然最大的 Pigsty 目前還是 Next.js + Fumadocs 糊的)。效果出乎意料的好,今天就來和大家分享下最終效果,以及在技術(shù)上選型與折騰的過程。
博客站
老馮的博客站地址在: https://blog.vonng.com[1] ,備案域名。目前公眾號(hào)大部分的博客文章已經(jīng)搬運(yùn)了上去,但還有少部分遺留,過幾天有空慢慢處理。這個(gè)網(wǎng)站有三個(gè)主要的專欄:PostgreSQL 大法師,數(shù)據(jù)庫老司機(jī),云計(jì)算泥石流。關(guān)注的主題是一目了然。
![]()
PostgreSQL 大法師專欄,主要關(guān)注的是 PG 生態(tài)的最新進(jìn)展,擴(kuò)展介紹,開發(fā)經(jīng)驗(yàn)與技巧,運(yùn)維管理,架構(gòu)設(shè)計(jì),內(nèi)核原理等專業(yè)內(nèi)容。
![]()
數(shù)據(jù)庫老司機(jī),關(guān)注的則是更廣泛的數(shù)據(jù)庫世界(PostgreSQL 除外),當(dāng)然也不僅僅是數(shù)據(jù)庫,操作系統(tǒng),開源,AI,Agent,DBA,信創(chuàng)國產(chǎn)化,和一些通用的技術(shù)主題都會(huì)放在這里。
![]()
云計(jì)算泥石流,關(guān)注的則是云計(jì)算領(lǐng)域的最新動(dòng)態(tài)(主要是下云!) —— 云廠商有什么故障或者八卦,老馮的消息算是相當(dāng)靈通。當(dāng)然老馮也會(huì)深入聊一聊云計(jì)算這個(gè)行業(yè)的經(jīng)濟(jì)原理,點(diǎn)評(píng)一些事件或者產(chǎn)品。
![]()
其他閑聊雜談和個(gè)人博客旅游則會(huì)發(fā)在另外一個(gè)隱藏的專欄里。另外,我給一些博客用比較新的 GPT o3 配了圖,看上去非常可愛,哈哈。
![]()
另一個(gè)重要的翻新動(dòng)機(jī)是我準(zhǔn)備把這些文章翻譯成英文,我有一些外國朋友看了機(jī)器翻譯的中文博客,都跟我說,你應(yīng)該把它們翻譯成英文,丟到 HackerNews 上去,老馮深以為然,所以這次也弄了英文版。后面還可以讓 Claude Code 幫我批量翻譯成法德日西各種語言。
![]()
老馮這個(gè)博客使用的 Hugo 主題是 Blowfish,河豚魚,目前是我認(rèn)為 Hugo 生態(tài)里在博客這個(gè)賽道最能打的主題了,它提供了非常豐富的功能集合。
![]()
不過如果是書籍文檔類的內(nèi)容,老馮跟喜歡使用 Hextra 主題。比如下面的《DDIA》和《PG Internal》中文翻譯版本。
![]()
DDIA
當(dāng)然,進(jìn)行改造的不僅僅是博客,還有老馮以前翻譯的一本互聯(lián)網(wǎng)經(jīng)典名著《設(shè)計(jì)數(shù)據(jù)密集型應(yīng)用》。
![]()
這個(gè)網(wǎng)站的地址是 https://ddia.vonng.com[2] ,里面提供了簡體中文與繁體中文的版本,另外英文原文也提供了摘要與參考文獻(xiàn)部分供參考。當(dāng)然,僅供學(xué)習(xí)之用。
![]()
比較有意思的是 DDIA 的第二版已經(jīng)發(fā)布了一部分,所以老馮也開了一個(gè)新的分支 v2 來翻譯第二版。不過最近有點(diǎn)兒忙,我準(zhǔn)備先讓 Claude Code 給我機(jī)翻一下,做個(gè)架子再慢慢打磨。
![]()
PG INTERNAL
另一本書是 PG INTERNAL,也就是《PostgreSQL 技術(shù)內(nèi)幕》,這本書是關(guān)于 PostgreSQL 內(nèi)核原理介紹的。地址在 https://pgint.vonng.com[3] 。
![]()
Hextra 自帶的 KaTeX 還挺不錯(cuò)的,內(nèi)聯(lián) LaTeX 公式渲染的都還不錯(cuò)。
![]()
Capslock 強(qiáng)化改造
另一個(gè)掛在老馮域名下的網(wǎng)站是 Capslock 改鍵方案。可以在 Mac 上把你的大寫鎖定(Capslock)鍵修改成一個(gè)超級(jí)強(qiáng)力的按鍵。
![]()
地址在 https://capslock.vonng.com[4] 。
關(guān)于這個(gè)項(xiàng)目,老馮之前寫過一篇文章介紹《》,這個(gè)方案我用了快十年,不夸張的說能讓我操作電腦的速度提高好幾倍 —— 或者換種說法,當(dāng)我偶爾需要在別人的電腦和鍵盤上進(jìn)行大量鍵盤操作時(shí),我感覺自己的速度慢了有六七倍。
![]()
這個(gè)原本使用 Docsify 和 Docsy 搭建的文檔站,這次也統(tǒng)一使用 Hextra 搭建了。
PIG 包管理器
老馮搞的 PostgreSQL 包管理器 pig 本來是蹭 Pigsty 的文檔的,后來又搬運(yùn)到 PG 擴(kuò)展目錄里蹭個(gè)位置。今天老馮一不做二不休,直接給它單開了一個(gè)域名 https://pig.pgsty.com[5] ,依然是 Hextra 。
![]()
向我給這種項(xiàng)目添加個(gè)自帶的文檔站,可能只要幾分鐘不到。把模板里的 hugo.yml ,docs 腳手架,.github CI workflow 復(fù)制到項(xiàng)目里一提交,加個(gè) DNS 解析,瞬間一個(gè)全球可訪問的美觀專用文檔站就上線了。
![]()
PG 擴(kuò)展目錄
PG 擴(kuò)展目錄收錄了 PostgreSQL 生態(tài) 423 個(gè)擴(kuò)展插件的詳細(xì)元數(shù)據(jù),分類列表,下載地址與使用方式。地址: https://ext.pgsty.com[6] 。
![]()
老馮之前也是用 Docsify 和 Hugo Docsy 做的,不過這次使用 Next.js + Fumadocs 框架糊了一下,看上去效果還可以。
![]()
Next.js 視覺效果要比 Hugo 好,唯一的缺點(diǎn)就是太慢了。即使用了 Rust 寫的 Turbo pack,編譯一下也經(jīng)常要十分鐘,4c8g 的構(gòu)建服務(wù)器都頻繁 OOM 還要加錢。真是因?yàn)檫@個(gè)原因,我才把有一千多個(gè)頁面的擴(kuò)展目錄從 Pigsty 文檔站抽離出來的,不然根本都構(gòu)建不動(dòng)了,Hugo 就沒有這個(gè)問題 ……
PIGSTY 文檔站
最后,最大的這個(gè) Pigsty 項(xiàng)目文檔站,老馮還是用 Next.js + Fumadocs 框架開發(fā)的,顯示效果其實(shí)比以前的 Hugo 強(qiáng)不少。
https://doc.pgsty.com[7]
![]()
當(dāng)然,Next.js 的項(xiàng)目維護(hù)起來也比較麻煩,而且老馮覺得 MDX 文檔里面各種格式控制/組件的代碼噪聲太大了,不利于 AI 閱讀理解使用。所以可能后面還是會(huì)用 Hugo + Hextra 來改造一下。
![]()
不過最近剛剛發(fā)布 Pigsty v3.6 ,暫時(shí)沒什么時(shí)間去折騰文檔換框架這檔子事兒了。既來之則安之吧,反正最近賽博菩薩 Vercel 送了我大幾千美元的 Credit,不用也是白不用。
![]()
選型之旅
老馮折騰博客寫博客也快十多年了,當(dāng)然最近兩年寫的比較多。我折騰過許多寫文檔寫博客的方案,從最開始在博客園,后來自己建站,試過許多框架,Pelican,StackEditor,Editor.md + Koa / Express,Go + BlackFriday,Docsify, Hugo + Docsy, Mintlify, Quip,Wiki.js, Next.js Nextra, Fumadocs 。基本上能看上眼的框架都試了一遍,甚至還自己手搓過一兩個(gè)博客框架。
當(dāng)然后來我也意識(shí)到了,寫文章吧,重要的還是內(nèi)容實(shí)質(zhì),框架折騰的再多,寫不出來東西又有什么用呢?所以基本上上面這些方案嘗試下來,最讓我滿意的依然是 Hugo,這個(gè)用 Go 寫的靜態(tài)網(wǎng)頁生成器。
其實(shí) Next.js MDX 做博客也挺炫酷的,但是老馮真的撞上性能墻了,幾千個(gè)頁面與圖片每次構(gòu)建一次都慢的要死,而且考慮到 AI Agent 閱讀干凈無噪音的 Markdown 會(huì)更好,所以最后還是統(tǒng)一選擇了 Hugo。PG 擴(kuò)展目錄和 PIGSTY 文檔站目前是例外,還是用 Next.js + Fumadocs 搭建的,我覺得如果不考慮構(gòu)建耗時(shí)的話,總體體驗(yàn)還是不錯(cuò)的。
如果要我推薦的話,2025年的當(dāng)下建站,靜態(tài)內(nèi)容站認(rèn)準(zhǔn) Hugo 就完事了,有無數(shù)主題可供選擇 —— 但好使好看的也就那么幾個(gè),博客首選 Blowfish,備選 LoveIt,文檔書籍首選 Hextra,備選 Docsy。如果非要來點(diǎn)兒動(dòng)態(tài)效果,那么還是 Next.js 糊吧,反正現(xiàn)在 Claude Code 糊這個(gè)還是非常好使的。
Hugo 網(wǎng)站托管非常簡單,在 .github/workflow 里加上一個(gè)固定的文件就可以自動(dòng) CI 了,用 Giscuss 做評(píng)論,用 GitHub Pages 做托管。如果想要更快的訪問,更多域名接入,也可以用 Cloudflare Pages。 Vercel 也不僅可以托管 Next.js 項(xiàng)目,也可以放 Hugo 的,而且中國大陸訪問速度也還行的。至于分析的話,我用的是 PostHog + Google Analytics ,也是傻瓜式一鍵接入就行。
總的來說,老馮這次也算折騰夠了,關(guān)于文檔/書籍,博客的大修基本上算是完成了,后面只要持續(xù)維護(hù)就行了。如果有朋友感興趣,后面我也可以深入聊一聊建站的一些最佳實(shí)踐。
References
[1]: https://blog.vonng.com[2]: https://ddia.vonng.com[3]: https://pgint.vonng.com[4]: https://capslock.vonng.com[5]: https://pig.pgsty.com[6]: https://ext.pgsty.com[7]: https://doc.pgsty.com
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.