디지털 세상에서 정보는 흩어지기 쉽습니다. 특히 여러 장치에서 노트를 작성하고 관리하는 분들이라면, 모든 기기에서 최신 정보를 유지하는 것이 얼마나 중요한지 공감하실 것입니다. 오늘은 Obsidian 사용자를 위한 강력한 동기화 솔루션인 Self-hosted LiveSync
플러그인을 소개하고, CouchDB를 이용해 직접 동기화 환경을 구축하는 방법을 안내해 드리고자 합니다.
이 글은 공식적인 유료 서비스인 Obsidian Sync를 대체할 수 있는 방법을 찾는 분들을 위해 작성되었습니다. 조금은 기술적인 내용이 포함될 수 있지만, 차근차근 따라 하실 수 있도록 최대한 쉽고 명확하게 설명해 드리겠습니다.
Self-hosted LiveSync 플러그인이란?#
Self-hosted LiveSync
는 Obsidian의 커뮤니티 플러그인 중 하나로, 사용자가 직접 제어하는 서버를 통해 노트 데이터를 거의 실시간으로 동기화할 수 있게 해주는 도구입니다. 공식 서비스와 달리 월별 비용이 발생하지 않으며, 데이터의 소유권을 온전히 사용자에게 보장한다는 큰 장점이 있습니다.
동기화 서버로는 CouchDB, IBM Cloudant 등 호환되는 데이터베이스를 사용할 수 있으며, 이 가이드에서는 널리 사용되고 비교적 설정이 용이한 CouchDB를 기준으로 설명하겠습니다.
CouchDB란?
Apache 소프트웨어 재단에서 개발한 오픈소스 NoSQL 데이터베이스입니다. 문서 지향 데이터베이스로, JSON 형식으로 데이터를 저장하여 웹 및 모바일 애플리케이션에서 유연하게 사용될 수 있습니다. 특히, 여러 장치 간의 데이터 복제 및 동기화 기능이 강력하여 LiveSync 플러그인의 백엔드로 적합합니다.
사용 전 준비사항#
플러그인을 설정하기에 앞서, 노트를 저장하고 동기화할 중앙 저장소, 즉 CouchDB 서버가 준비되어 있어야 합니다. CouchDB를 구축하는 방법은 다양하지만, 대표적으로 다음과 같은 방법들이 있습니다.
Docker를 이용한 설치: 개인 서버나 NAS(Network Attached Storage)가 있다면 Docker를 이용해 손쉽게 CouchDB 컨테이너를 실행할 수 있습니다. 가장 안정적이고 추천되는 방법입니다.
클라우드 플랫폼 활용 (예: fly.io): 클라우드 호스팅 서비스를 이용하여 CouchDB 인스턴스를 생성하고 외부에서 접속할 수 있도록 설정하는 방법입니다. 비교적 간단하게 시작할 수 있습니다.
CouchDB의 설치는 아래의 글을 참조해 주세요
이 가이드에서는 CouchDB 서버가 이미 구축되어 있고, 접속에 필요한 정보(주소, 사용자 이름, 비밀번호)를 알고 있다는 가정하에 설명을 진행합니다. CouchDB 서버 구축 방법은 사용하시는 환경에 따라 상이하므로, 별도의 가이드를 참조하여 주시기 바랍니다.
이제 본격적으로 Obsidian에 Self-hosted LiveSync
플러그인을 설치하고 CouchDB 서버와 연동하는 방법을 단계별로 알아보겠습니다.
Self-hosted LiveSync 플러그인 설치 및 활성화#
- Obsidian을 실행하고, 좌측 하단의 ‘설정’ (톱니바퀴 아이콘)을 클릭합니다.
- 설정 창에서 ‘커뮤니티 플러그인’ 탭으로 이동합니다.
- ‘안전 모드’가 활성화되어 있다면, ‘안전 모드 끄기’ 버튼을 클릭하여 비활성화합니다.
- ‘커뮤니티 플러그인 탐색’ 버튼을 클릭합니다.
- 검색창에
Self-hosted LiveSync
를 입력하여 플러그인을 찾은 뒤, ‘설치’ 버튼을 누릅니다. - 설치가 완료되면 ‘활성화’ 버튼을 클릭하여 플러그인을 활성화합니다.
LiveSync 설정 및 CouchDB 연동#
플러그인 활성화 후, 설정 메뉴의 ‘커뮤니티 플러그인’ 목록 아래에 새로 생긴 ‘Self-hosted LiveSync’ 탭을 클릭하여 설정 창으로 이동합니다.
설정 창 상단에 여러 아이콘이 표시됩니다. 가장 왼쪽에 있는 위성(🛰️) 아이콘이 선택되었는지 확인합니다.
CouchDB 데이터베이스 설정 정보를 입력하는 항목들이 나타납니다. 준비해 둔 CouchDB 서버 접속 정보를 각 항목에 맞게 정확히 입력합니다.
- URI: CouchDB 서버의 전체 주소를 입력합니다. (예:
http://127.0.0.1:5984
또는https://your-domain.com/couchdb
) ⚠️주소 마지막에/
가 포함되지 않도록 주의하세오. - Username: CouchDB 접속 시 사용하는 사용자 이름을 입력합니다.
- Password: CouchDB 접속 시 사용하는 비밀번호를 입력합니다. ⚠️ 이 비밀번호는 Obsidian Vault 내 설정 파일에 일반 텍스트로 저장됩니다. 보안에 유의하시기 바랍니다.
- Database name: 동기화를 위해 사용할 데이터베이스의 이름을 지정합니다. 임의로 지정할 수 있지만, 다른 기기에서도 동일한 이름을 사용해야 하므로 기억하기 쉬운 이름으로 설정하는 것이 좋습니다. (예:
obsidian-notes
)
정보를 모두 입력한 후, ‘Test database connection’ 버튼을 클릭하여 서버와 정상적으로 연결되는지 확인합니다. 모든 항목에 녹색 체크 표시가 나타나면 성공입니다.
필요에 따라 ‘End-to-end encryption’ (종단간 암호화) 설정을 할 수 있습니다. 암호화 사용 시, 데이터를 보호할 추가 비밀번호를 설정하게 됩니다. 이 비밀번호는 CouchDB 서버에도 저장되지 않으며, 분실 시 데이터를 복구할 수 없으므로 반드시 안전한 곳에 보관해야 합니다.
동기화 설정하기#
LiveSync
를 선택한 후 Apply
를 눌러줍니다. 동시 접속 문제로 동기화가 원활하지 않을 때는 Sync Mode
를 Periodic and On Events
로 바꿔 사용하는 것도 좋습니다.
동기화 시작 및 확인#
CouchDB 설정이 완료되면, 에디터 우측 하단 상태바에 LiveSync 상태 아이콘이 나타납니다. 아이콘의 모양으로 현재 동기화 상태를 파악할 수 있습니다.
- 💤 (잠자기): 동기화가 활성화되었으며, 파일 변경을 기다리는 상태입니다.
- ⚡️ (번개): 현재 동기화가 진행 중인 상태입니다.
- ⏹️ (정지): 동기화가 중지된 상태입니다.
- ⚠️ (경고): 오류가 발생한 상태입니다.
다른 기기(PC, 모바일)에도 동일한 방법으로 Obsidian과 LiveSync 플러그인을 설치하고, 반드시 동일한 CouchDB 접속 정보와 데이터베이스 이름, 그리고 암호화 비밀번호를 입력하여 설정을 완료합니다.
설정이 완료된 후, 한 기기에서 노트를 수정하거나 새로 생성하면 잠시 후 다른 기기에도 해당 내용이 자동으로 반영되는 것을 확인할 수 있습니다.
마무리#
지금까지 Self-hosted LiveSync
플러그인과 CouchDB를 이용하여 자신만의 Obsidian 동기화 환경을 구축하는 방법에 대해 알아보았습니다. 처음에는 다소 복잡하게 느껴질 수 있지만, 이 가이드를 차근차근 따라오셨다면 성공적으로 설정을 마치셨으리라 믿습니다.
직접 동기화 서버를 운영하는 것은 자신의 소중한 지식 자산을 온전히 통제하고 관리한다는 점에서 큰 의미가 있습니다. 이제 여러 장치를 넘나들며 끊김 없이 아이디어를 기록하고 발전시켜 나가시길 바랍니다.
궁금한 점이나 막히는 부분이 있다면, 언제든 관련 커뮤니티나 문서를 참조하여 해결해 나가실 수 있을 것입니다. 여러분의 지식 여정에 이 글이 실질적인 도움이 되었기를 바랍니다.
참고
- Self-hosted LiveSync Plugin (Official GitHub )
- Apache CouchDB (Official Website )