- Viết bài trên máy cục bộ bằng Obsidian, sau đó triển khai blog cá nhân nhanh chóng và miễn phí với tổ hợp Hugo + giao diện Bear Blog + Cloudflare Pages
- Quản lý phiên bản qua GitHub và triển khai tự động giúp việc vận hành rất tiện. Chỉ cần viết bài, lưu và commit là có thể xuất bản ngay
- Thiết lập ban đầu cần một chút kiến thức phát triển nhưng sau đó quy trình làm việc trở nên rất đơn giản
- Phù hợp với những ai đang tìm kiếm một cách viết blog gọn nhẹ và bền vững
Cấu hình chi tiết
- Sử dụng Obsidian để viết toàn bộ bài viết
- Lưu dưới dạng tệp cục bộ nên mọi dữ liệu đều thuộc sở hữu của chính bạn
- Giao diện Minimal mang lại trải nghiệm gọn gàng, không gây xao nhãng
- Có thể đồng bộ không giới hạn giữa nhiều thiết bị thông qua iCloud (cũng có thể dùng Dropbox, Google Drive)
- Xuất bản
- Hugo: trình tạo trang tĩnh siêu nhanh
- giao diện Bear Blog: giao diện blog tối giản và nhanh
- GitHub + Cloudflare Pages: có thể triển khai website miễn phí
- Ưu điểm: không mất phí thuê bao, không bị phụ thuộc nhà cung cấp, không lo rủi ro do chính sách nền tảng thay đổi
Thiết lập hệ thống
- Sau khi cài Hugo, tạo một site mới
hugo new site myblog
cd myblog
- Thêm giao diện Bear Blog
git init
git submodule add https://github.com/janraasch/hugo-bearblog.git themes/hugo-bearblog
- Cấu hình tệp
config.toml để dùng giao diện Bear Blog
theme = 'hugo-bearblog'
- Kết nối Obsidian với Hugo
- Viết bài trong thư mục
content/blog của Hugo
- Trong Obsidian, dùng tính năng "Open folder as vault" để liên kết với thư mục đó
- Làm như vậy thì các bài viết được tạo trong Obsidian sẽ được nối trực tiếp thành bài đăng trên site Hugo
- Thêm mẫu Front Matter cho Hugo ở đầu bài viết khi soạn trong Obsidian
+++
title= "Your Post Title"
date= YYYY-MM-DD
tags= ["post"]
draft= true
+++
- Khi đã sẵn sàng xuất bản, đổi giá trị
draft thành false
- Dùng tính năng máy chủ cục bộ của Hugo để xem trước bài viết trên trình duyệt
hugo server -D
- Tạo một repository GitHub mới và kết nối dự án cục bộ
git remote add origin https://github.com/yourusername/yourblog.git
git add .
git commit -m "Initial commit"
git push -u origin main
- Sau khi đăng ký Cloudflare, tạo dự án Pages
- Kết nối repository GitHub và áp dụng cấu hình build sau
- Lệnh build:
hugo --minify
- Thư mục đầu ra:
public
Quy trình xuất bản
- Viết bài trong Obsidian
- Đổi
draft: true thành draft: false trong mẫu Front Matter
- Commit và push lên GitHub
git add . git commit -m "Publish new post" git push
- Cloudflare Pages sẽ tự động phát hiện thay đổi và build lại site, áp dụng trong vòng 1–2 phút
11 bình luận
Tôi cũng đang vận hành blog bằng Hugo.
Sau khi viết bài trong Obsidian, tôi dùng cách lấy việc push lên GitHub repository làm trigger để host trên Cloudflare Pages.
Ngoài ra tôi còn tích hợp dịch vụ tìm kiếm Algolia, và mỗi khi viết bài mới thì tạo một file
shđể phục vụ indexing, nhét hết các lệnh liên quan nhưgit, indexing, v.v. vào đó rồi chạy lệnhshđể xuất bản bài viết.Tôi chủ yếu dùng Obsidian vì thỉnh thoảng có cái thú gom các bài đã viết lại và xem chúng trong graph view.
Tôi cũng đã làm theo cách tương tự, nhưng giờ thì đang viết trực tiếp trong kho lưu trữ trên github.com. (tận dụng tính năng github pages tự động build jekyll)
https://plan9.kr/
Ồ, bạn là người đã làm ra Text Battle phải không?
Trước đây tôi từng thấy trên cộng đồng và chơi rất vui haha, rất vui được gặp bạn
Tôi cũng đang làm blog bằng Hugo nên thấy vui ghê!
Tôi cũng từng định dùng Obsidian làm trình biên tập chính, nhưng nếu ở môi trường có máy tính thì có vẻ VSCode tốt hơn.
Vì các thay đổi được phản ánh ở mức mili giây nên tôi không thật sự cảm thấy cần đến Obsidian lắm.
Tôi không hiểu lý do phải kết nối Hugo với Obsidian.
Nếu là người dùng Hugo thì có vẻ VSCode tự nhiên hơn.
Cái này thật sự rất thú vị.
Plugin digital garden cũng rất tiện.
Cảm ơn bạn đã chia sẻ nội dung. Mình mới bắt đầu dùng obsidian nên chắc cũng phải thử dùng cùng mới được.
Cảm ơn vì thông tin hữu ích. Dạo này tôi cũng dùng Obsidian khá nhiều và có vẻ đây là một tổ hợp rất hợp với tôi.
Tôi vừa mới tạo một blog bằng Hugo cách đây vài ngày nên thấy nội dung này thật sự rất đáng mừng.
Tôi đang thiết lập để khi push thì sẽ được triển khai lên GitHub Pages và sử dụng như vậy. haha
Tôi cũng rất thích Obsidian, nhưng cũng khuyên bạn nên dùng tiện ích mở rộng tên là "Front Matter" trong vscode.
Nó cung cấp các chức năng CMS đơn giản; tuy không hoàn hảo lắm nhưng dùng cũng khá ổn.
Ý kiến trên Hacker News