在 Cloudflare Pages 上替 Hugo 接 Decap CMS

Hugo 很快也很彈性,但直接改 Markdown 不是每個人都喜歡。Decap CMS(前身 Netlify CMS)可以直接當靜態頁面放在 repo 裡,透過 GitHub API 讀寫 Markdown,不需要額外的 backend server。 以下是這個站實際使用的架構與設定。 架構 瀏覽器 → /shs/(Decap CMS SPA) ↓ GitHub OAuth Cloudflare Pages Function(/api/auth, /api/auth/callback) ↓ GitHub API content/posts/*.{zh,en}.md ↓ git push Cloudflare Pages build(hugo --minify) ↓ public/ → 你的 domain 沒有資料庫、沒有 CMS server,全部在 Git 裡。 1. 放 CMS 到 static 資料夾 建兩個檔案: static/shs/index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Content Manager</title> </head> <body> <script src="https://unpkg.com/decap-cms@^3.0.0/dist/decap-cms.js"></script> </body> </html> static/shs/config.yml ...

2026年4月15日 · 3 分鐘 · Sheng

我的 Docker Compose 範本集

大綱由 Sheng 整理,內文由 ChatGPT 4o 填充。圖也是 ChatGPT 生的。 每次起新專案都要重新寫 Docker Compose 設定很浪費時間。我整理了一組常用服務(MySQL、Redis 等)的範本,clone 下來改一下就能用。 GitHub repo:docker-compose-templates Docker 是什麼 Docker 把應用程式打包成 container,裡面包含所有需要的 dependency。不用在本機裝一堆服務,container 之間互相隔離,環境一致。 為什麼用 Docker Compose Docker Compose 用一個 YAML 檔管理多個 container,適合需要多個服務協作的開發和測試環境。 使用方式 Clone repo → 選需要的範本 → docker-compose up -d。 詳細說明見 GitHub repo。 適用場景 快速起專案環境 本地開發 整合測試 實驗新工具 免責聲明 這些範本僅供開發用途。用於 production 前請自行評估安全性與穩定性。

2024年10月4日 · 1 分鐘 · Sheng

Hugo 架站筆記

大綱由 Sheng 整理,內文由 ChatGPT 填充。圖也是 ChatGPT 生的。 1. 安裝 Hugo 照官方文件走就好: Installation | Hugo (gohugo.io) 2. 建立網站 裝好之後跟著 Quick Start 操作,幾分鐘就能把骨架跑起來: Quick start | Hugo (gohugo.io) 3. 選 Theme 挑 theme 就像挑房子,選錯風格訪客會直接關掉。我用的是 Hugotex,再自己改了一些細節。 完整清單:Hugo Themes 4. 部署到 GitHub Pages 網站做好就推上去。建議搭配 GitHub Actions 自動部署,push 到 main 就直接上線。 Deploying Hugo on GitHub Pages 常用指令 新增文章: hugo new post/your-awesome-title.md 自訂 archetype 模板: 在 archetypes/ 建一個範本,之後新增文章自動套用: --- title: "{{ replace .Name "-" " " | title }}" date: {{ .Date }} draft: true author: "Sheng" description: "" tags: [] keywords: [] --- 用自訂模板新增文章: ...

2024年9月10日 · 1 分鐘 · Sheng