Máy Tính

Đồng Bộ Obsidian Tự Host Miễn Phí: Cùng CouchDB và LiveSync

Giao diện trang chủ CouchDB sau khi đăng nhập, hiển thị các database hiện có để đồng bộ Obsidian.

Obsidian đã trở thành công cụ ghi chú không thể thiếu đối với nhiều người dùng yêu công nghệ nhờ khả năng tùy biến mạnh mẽ, sự đơn giản trong sử dụng và quyền kiểm soát tuyệt đối mà nó mang lại. Tuy nhiên, một trong số ít tính năng yêu cầu trả phí của Obsidian là Obsidian Sync, giải pháp đồng bộ ghi chú giữa các thiết bị. Bài viết này sẽ hướng dẫn bạn cách xây dựng một giải pháp thay thế hoàn toàn miễn phí, tự host ngay trên server tại nhà (home server) của bạn, sử dụng CouchDB và plugin LiveSync, mang lại trải nghiệm đồng bộ tức thời và hoàn hảo.

Để thiết lập hệ thống này, bạn cần có khả năng triển khai các container Docker và tốt nhất là có thể truy cập server tại nhà từ xa (ví dụ qua Tailscale hoặc bất kỳ hệ thống truy cập từ xa nào khác). Nếu không có khả năng truy cập từ xa, ghi chú của bạn vẫn sẽ đồng bộ khi bạn ở cùng mạng nội bộ với server. Mặc dù Git hay Syncthing cũng là những lựa chọn phổ biến để đồng bộ ghi chú, giải pháp với CouchDB và LiveSync được đánh giá là vượt trội hơn hẳn về tính “live” và hiệu quả.

Giới Thiệu CouchDB và LiveSync: Bộ Đôi Hoàn Hảo Cho Ghi Chú Obsidian

CouchDB: Nền Tảng Cơ Sở Dữ Liệu NoSQL Mạnh Mẽ

CouchDB là một cơ sở dữ liệu NoSQL hướng tài liệu (document-oriented), mã nguồn mở, nổi bật với khả năng lưu trữ mọi phiên bản của một tài liệu. Đối với Obsidian, CouchDB là lựa chọn hoàn hảo. Mỗi ghi chú của bạn có thể được tạo thành một tài liệu riêng biệt trong CouchDB. Plugin LiveSync sẽ có nhiệm vụ đưa ghi chú của bạn vào cơ sở dữ liệu, đồng thời truy xuất và diễn giải các tài liệu đó để chèn ngược lại vào Obsidian trên các thiết bị khác. Kết quả là một hệ thống đồng bộ mạnh mẽ, hoàn toàn miễn phí và tận dụng chính phần cứng của bạn.

LiveSync Plugin: Đồng Bộ Hóa Tức Thì Trên Mọi Thiết Bị

LiveSync cung cấp nhiều tùy chọn hữu ích để đồng bộ Obsidian của bạn với các thiết bị khác, thậm chí hoạt động tốt trên cả thiết bị di động. Với LiveSync, bạn có thể thiết lập đồng bộ trên điện thoại, máy tính xách tay và máy tính để bàn, đảm bảo ghi chú xuất hiện tức thì trên tất cả các thiết bị ngay khi bạn thêm một ghi chú mới ở bất kỳ đâu. Trải nghiệm thiết lập cực kỳ đơn giản và mang lại lợi ích lớn cho người dùng home server. Khi cần ghi chú nhanh ngoài đường, dù sử dụng Obsidian trực tiếp hay một ứng dụng khác, những gì bạn thêm vào sẽ ngay lập tức có mặt trên PC hoặc laptop của bạn.

Đối với người dùng Obsidian, đây là một plugin không thể thiếu. Nó miễn phí, tự host và trên các nền tảng như TrueNAS, bạn có thể dễ dàng tích hợp nó vào hệ thống sao lưu đám mây của mình. Để triển khai container Docker chứa CouchDB, bạn có thể sử dụng các công cụ như Dockge, hoặc bất kỳ nền tảng nào hỗ trợ Docker Compose.

Hướng Dẫn Chi Tiết Thiết Lập CouchDB và Obsidian LiveSync

Chuẩn Bị và Cài Đặt CouchDB Bằng Docker Compose

Việc thiết lập này được phát triển dựa trên bài đăng hữu ích của người dùng u/Timely_Anteater_9330 trên Reddit. Chúng ta sẽ sử dụng file Docker Compose của họ để triển khai dịch vụ này.

Nếu bạn không sử dụng Unraid, bạn có thể loại bỏ phần “labels” khỏi file compose. Với TrueNAS và Dockge, bạn nên tạo một dataset riêng để lưu trữ các file của CouchDB và chỉnh sửa phần “volumes” để trỏ đến đó. Ví dụ về cấu hình volumes có thể trông như sau (đường dẫn của bạn có thể khác):

- /mnt/Storage/configs/CouchDB-Obsidian/data:/opt/couchdb/data
- /mnt/Storage/configs/CouchDB-Obsidian/etc/local.d:/opt/couchdb/etc/local.d

Ngoài ra, bạn nên thiết lập PUID và GUID thành 1000 và 1000.

Sau khi container CouchDB khởi động và chạy, bạn có thể truy cập giao diện CouchDB bằng cách vào địa chỉ http://<IP_Server>:5984/_utils. Bạn sẽ đăng nhập bằng thông tin xác thực đã định nghĩa trong file Docker Compose. Trang của bạn sẽ trông tương tự như hình ảnh dưới đây sau khi đăng nhập.

Giao diện trang chủ CouchDB sau khi đăng nhập, hiển thị các database hiện có để đồng bộ Obsidian.Giao diện trang chủ CouchDB sau khi đăng nhập, hiển thị các database hiện có để đồng bộ Obsidian.

Tiếp theo, hãy vào thanh bên trái và nhấp vào Setup. Chọn Configure as single node và nhập lại thông tin xác thực từ file Docker Compose của bạn. Sau đó, bạn có thể xác minh quá trình cài đặt; nếu mọi thứ đúng, một thông báo thành công sẽ xuất hiện.

Tạo Cơ Sở Dữ Liệu và Cấu Hình Tối Ưu Cho LiveSync

Bây giờ, hãy tạo cơ sở dữ liệu cho ghi chú Obsidian của bạn. Bạn nên tạo một cơ sở dữ liệu riêng cho mỗi người dùng; ví dụ, tôi đặt tên là “obsidiandb”, nhưng bạn có thể chọn một quy ước đặt tên khác để phân biệt. Đảm bảo tùy chọn “partitioning” được đặt thành “non-partitioned”. Sau khi tạo, bạn sẽ được chuyển hướng.

Bước tiếp theo là cấu hình cơ sở dữ liệu để hoạt động với LiveSync. Bạn cần tạo các cài đặt sau, được lấy từ script couchdb-init.sh trên GitHub của LiveSync. Bạn có thể thực hiện việc này bằng cách vào mục Configuration trên menu bên trái và nhấp vào nút Add option cho từng cài đặt:

  • Section: chttpd, Name: require_valid_user, Value: true
  • Section: chttpd_auth, Name: require_valid_user, Value: true
  • Section: httpd, Name: WWW-Authenticate, Value: Basic realm="couchdb"
  • Section: httpd, Name: enable_cors, Value: true
  • Section: chttpd, Name: enable_cors, Value: true
  • Section: chttpd, Name: max_http_request_size, Value: 4294967296
  • Section: couchdb, Name: max_document_size, Value: 50000000
  • Section: cors, Name: credentials, Value: true
  • Section: cors, Name: origins, Value: app://obsidian.md,capacitor://localhost,http://localhost

Lưu ý rằng trong trường “origins” cho cors, bạn cũng nên thêm bất kỳ địa chỉ IP hoặc tên miền nào khác mà bạn định truy cập từ đó. Mặc dù không được khuyến nghị, bạn cũng có thể vào phần CORS ở bên trái trong cấu hình và tắt hoàn toàn. Tuy nhiên, đây là một tính năng bảo mật quan trọng nên được giữ bật.

Danh sách cơ sở dữ liệu trong CouchDB, hiển thị database &quot;obsidiandb&quot; đã tạo sẵn cho Obsidian LiveSync.Danh sách cơ sở dữ liệu trong CouchDB, hiển thị database "obsidiandb" đã tạo sẵn cho Obsidian LiveSync.

Cài Đặt và Cấu Hình LiveSync Plugin Trong Obsidian

Cuối cùng, cài đặt plugin LiveSync từ phần Community plugins của Obsidian và bật nó lên. Sau đó, bạn có thể bắt đầu cấu hình. Mặc dù có tùy chọn Connect with setup URI, tùy chọn này không hoạt động hiệu quả. Thay vào đó, hãy chuyển đến tab thứ tư (có biểu tượng vệ tinh nhỏ, như hình trên) và cấu hình thủ công.

Đảm bảo chọn CouchDB, sau đó sử dụng cùng tên người dùng và mật khẩu mà bạn đã dùng khi cấu hình server. Tên cơ sở dữ liệu phải khớp với tên cơ sở dữ liệu bạn đã tạo trong CouchDB. Nhấp vào Test, và nếu mọi thứ đúng, nó sẽ hoạt động! Bạn cũng có thể nhấp vào Check để đảm bảo mọi thứ được cấu hình chính xác và có thể nhận được một số gợi ý để sửa lỗi. Bạn cũng có thể cuộn xuống và bật mã hóa đầu cuối (end-to-end encryption) bằng một cụm mật khẩu, một tính năng tôi khuyến nghị nên sử dụng.

Màn hình cài đặt plugin LiveSync trong Obsidian, hiển thị các tùy chọn cấu hình kết nối tới server CouchDB.Màn hình cài đặt plugin LiveSync trong Obsidian, hiển thị các tùy chọn cấu hình kết nối tới server CouchDB.

Cuối cùng, chuyển sang tab kế tiếp và thay đổi chế độ đồng bộ thành LiveSync. Bây giờ mọi thứ sẽ hoạt động, và khi bạn gõ, dữ liệu của bạn sẽ được đồng bộ hóa tức thì với server CouchDB, từ đó chia sẻ với các thiết bị khác cũng có quyền truy cập vào cơ sở dữ liệu của bạn. Tôi chỉ gặp một vấn đề duy nhất không rõ nguyên nhân, nhưng giải pháp đơn giản chỉ là khởi động lại container CouchDB. Sau nhiều tuần sử dụng, vấn đề này chỉ xảy ra một lần, cho thấy hiệu suất và độ ổn định đáng tin cậy của thiết lập này.

Tại Sao Nên Chọn Giải Pháp Đồng Bộ Obsidian Tự Host Này?

Ưu Điểm Nổi Bật Của Đồng Bộ LiveSync Tự Host

Có nhiều cách để đồng bộ ghi chú của bạn, và đây chỉ là một trong số đó. Bạn có thể sử dụng Git, Syncthing, hoặc thậm chí các công cụ cơ bản hơn như Google Drive. Tuy nhiên, tôi đặc biệt yêu thích tính chất “live” của công cụ này và khả năng viết trên điện thoại để ghi chú ngay lập tức có mặt trên laptop hoặc PC. Mặc dù có thể yêu cầu nhiều bước thiết lập hơn một số người mong muốn, nhưng xét về lợi ích và hiệu quả mang lại, thời gian bỏ ra là hoàn toàn xứng đáng.

Giao diện làm việc của Obsidian trên máy tính, thể hiện khả năng tùy biến và kiểm soát cao cho người dùng.Giao diện làm việc của Obsidian trên máy tính, thể hiện khả năng tùy biến và kiểm soát cao cho người dùng.

Sức Mạnh Đến Từ Sự Kiểm Soát Của Obsidian

Đây cũng là lý do tôi yêu thích Obsidian: mức độ kiểm soát mà nó trao cho người dùng là vô cùng ấn tượng. Bạn có thể làm bất cứ điều gì bạn muốn; không có gì ngăn cản bạn thiết lập một giải pháp thay thế tiện lợi cho một trong số ít dịch vụ trả phí của nó, và đó là một động thái tuyệt vời để làm hài lòng người dùng. Obsidian là một trong những ứng dụng ghi chú tốt nhất hiện nay, và giải pháp tự host này đã làm cho nó trở nên hoàn hảo hơn nữa đối với trải nghiệm cá nhân của tôi.

Việc tự host giải pháp đồng bộ cho Obsidian bằng CouchDB và LiveSync không chỉ giúp bạn tiết kiệm chi phí mà còn mang lại quyền kiểm soát tuyệt đối đối với dữ liệu cá nhân. Đây là một bước đi mạnh mẽ để tối ưu hóa trải nghiệm ghi chú của bạn, đảm bảo mọi thông tin quan trọng luôn sẵn sàng và an toàn trên mọi thiết bị. Hãy thử nghiệm và trải nghiệm sự tiện lợi mà giải pháp này mang lại.

Hãy chia sẻ trải nghiệm của bạn dưới phần bình luận hoặc khám phá thêm các mẹo tối ưu Obsidian khác trên congnghemoi.net!

Related posts

Hướng Dẫn Cài Đặt Lại Windows 11 Sạch Nhanh Chóng với PowerShell và WinGet

Administrator

Dotfiles: Chìa Khóa Nâng Tầm Cá Nhân Hóa và Tự Động Hóa Hệ Thống Máy Tính Của Bạn

Administrator

Quản lý cáp PC: Những lợi ích không thể bỏ qua để tối ưu hệ thống và trải nghiệm sử dụng

Administrator