Obsidianのデバイス間の同期にSelf-hosted LiveSyncとCouchDBを組み合わせて使えると聞いたので、CouchDBをインストールしてみた
What's Obsidian
Obsidian - Sharpen your thinking
What's Self-hosted LiveSync
Obsidianのコミュニティプラグイン
What's CouchDB
Apache Software FoudationのWeb公開に最適化されたドキュメント指向のオープンソースデータベースプロジェクト
設定メモ
事前準備
今回はCouchDBをDockerのコンテナとして動かすので、Debian12でDockerを使えるようにするでDockerの環境構築をしておいた
構成ファイルを書く
# mkdir -p /docker/obsidian/couchdb/data
# cd /docker/obsidian
# nano ./couchdb/local.ini
# nano docker-compose.yml
/docker/obsidian/couchdb/local.ini
[couchdb]
single_node=true
max_document_size = 50000000
[chttpd]
require_valid_user = true
max_http_request_size = 4294967296
[chttpd_auth]
require_valid_user = true
authentication_redirect = /_utils/session.html
[httpd]
WWW-Authenticate = Basic realm="couchdb"
enable_cors = true
[cors]
origins = app://obsidian.md,capacitor://localhost,http://localhost
credentials = true
headers = accept, authorization, content-type, origin, referer
methods = GET, PUT, POST, HEAD, DELETE
max_age = 3600
/docker/obsidian/docker-compose.yml
version: "2"
services:
couchdb:
image: couchdb
ports:
- 5984:5984
environment:
COUCHDB_USER: couchdb_user
COUCHDB_PASSWORD: couchdb_password
restart: always
volumes:
- ./couchdb/local.ini:/opt/couchdb/etc/local.ini
- ./couchdb/data:/opt/couchdb/data
CouchDBで使うポートを開ける
# nano /etc/ufw/applications.d/ufw-couchdb
/etc/ufw/applications.d/ufw-couchdb
[couchdb]
title=Apache CouchDB
description=Seamless multi-master sync, that scales from Big Data to Mobile, with an Intuitive HTTP/JSON API and designed for Reliability.
ports=5984/tcp
CouchDBを動かす
# ufw allow 'couchdb'
# docker-compose up -d && docker-compose logs -f
ブラウザでアクセスする
http://[VPSに割り当てられたIPアドレス]:5984/_utils#setup へブラウザでアクセスする
ユーザー名とパスワードはdocker-compose.ymlに書いたCOUCHDB_USERとCOUCHDB_PASSWORDを使う
Self-hosted LiveSync用のデータベースを作成する
左側の「Databases」をクリックして、右上の「Create Database」をクリックする
作成するデータベース名を入力して、「Create」ボタンをクリックする