アプリ Obsidian

Obsidian Syncは高いので、Self-hosted LiveSyncを使う

Obsidian公式のSyncは高いので、コミュニティプラグインのSelf-hosted LiveSyncを使って同期、Obsidian Gitでバックアップするようにしてみました。

Obsidian Sync

メインのPCがMacからWindowsに変わったために、Obsidianの同期方法を再検討しました。これまではiCloudによる同期を使っていましたが、Windows版のiCloudはあまり信用していないため、他の手段を探す必要があります。

Obsidianが公式に提供している同期サービスObsidian Syncには、主にSyncとSync Plusの2つのプランがあります。Sync Plusには容量が100GBのプランもあり、通常のSync Plusの倍額に設定されています。

SyncSync Plus
料金月額5ドル / 年額48ドル月額10ドル / 年額96ドル
最大vault数110
容量1GB10GB
1ファイル当たり最大サイズ5MB200MB
バージョン管理1カ月12カ月

(2024年4月15日現在)

Obsidian Sync
Obsidian Sync is the simple and secure way to synchronize your Obsidian notes across any device and OS.
Obsidian Sync favicon obsidian.md
Obsidian Sync

Obsidian Syncは公式サービスであることから、安定していることが期待されますが、1GBの容量は画像などを含む文書を扱うには心許ないサイズです。10GBあれば当面は困らないかもしれませんが、ノートアプリに月額10ドルは高すぎます。

Self-hosted LiveSync

そこで、色々と調べた結果、ObsidianのコミュニティプラグインであるSelf-hosted LiveSyncを使ってみることにしました。Self-hosted LiveSyncは、ObsidianのvaultをCouchDBのサーバを使って同期するプラグインです。

GitHub - vrtmrz/obsidian-livesync
Contribute to vrtmrz/obsidian-livesync development by creating an account on GitHub.
GitHub - vrtmrz/obsidian-livesync favicon github.com
GitHub - vrtmrz/obsidian-livesync

上記GitHubのHow to useを参考にし、fly.ioを使ってCouchDBのサーバを立ち上げ、Self-hosted LiveSyncを使ってみました。

fly.ioでは無料でCouchDBのサーバを立ち上げることができ、3GBの容量が無料で与えられます。3GBを超える場合、1GBあたり0.15ドルの月額料金がかかります。

Deploy app servers close to your users · Fly

Deploy app servers close to your users
     · Fly favicon fly.io

1. CouchDBの設定

Self-hosted LiveSyncの設定ドキュメントに自動セットアップスクリプトが用意されているため、それを利用してCouchDBのサーバを立ち上げていきます。

この手順は、Self-hosted LiveSyncの作成者による動画がYouTubeにアップされているため、そちらを参考に進めていきます。

LiveSync Setup onto Fly.io SpeedRun 2024 using Google Colab
LiveSync Setup onto Fly.io SpeedRun 2024 using Google Colab favicon www.youtube.com
LiveSync Setup onto Fly.io SpeedRun 2024 using Google Colab
  1. まず、setup-flyio-on-the-fly-v2.ipynb を開き、 Open in Colab をクリックします。 すると、Google Colabが開かれます。そこで、regionを nrt/Tokyo, Japan に設定します(日本の場合)。

    (今回は最初からnrt/Tokyo, Japanになっていたので、何も弄らずに進めました)

    リンクをクリックしてGoogle Colabを最初に開いた状態のスクリーンショット

  2. regionを選択したら、各セルを上から順番に実行していきます。 なお、最後の!./delete-server.sh のセルを実行すると、立ち上げたサーバインスタンスが削除されるため、注意してください。

    1. # Install prerequesties のセルを実行し、依存関係のインストールが行います。

    2. Login up sign up のセルを実行すると、fly.ioにログインするためのリンクが表示されます。表示されるリンクをクリックしてログインします。fly.ioのアカウントが無い場合は、ここでアカウントを作成します。

      ログインすると、Google Colabのセルの実行結果に successfully logged in as [email protected] のように表示されます。

    3. サーバを立ち上げる前に、fly.ioに支払い情報を登録しておく必要があります。登録せずにサーバを立ち上げようとすると、エラーが表示されます。fly.ioのダッシュボードのBillingページから、Hobby Planを選び、支払い情報を登録します。ここで登録すると、5GBの無料クレジットがアカウントに追加されます。この登録では支払いは発生しません。

    4. 支払い情報を登録出来たら、# see https://fly.io/docs/reference/regions/ から始まるセルを実行すると、CouchDBのサーバが立ち上がります。

    5. サーバインスタンスの立ち上げが完了すると、以下のような形式でセットアップ用のURIと、そのコピーボタン、セットアップ用パスワードが表示されます。この情報は、Obsidianの設定で使います。再度表示することができないため、メモしておきます。

      --- setup uri ---
      obsidian://setuplivesync?.......
      Copy your setup-URI with this button! -> Copy setup uri
      Importing passphrase is `*****`.
      If you want to synchronise in live mode, please apply a preset after ensuring the imported configuration works.
      

2. Obsidianの設定

CouchDBのサーバが立ち上がったら、ObsidianのSelf-hosted LiveSyncの設定を行います。以下の手順をPC版ObsidianとiOS版Obsidianの両方で行うことで、同期を開始することができます。

  1. Obsidianの設定画面から、コミュニティプラグインを開き、閲覧をクリックして、Self-hosted LiveSync をインストールします。

    ObsidianでSelf-hosted LiveSyncプラグインをインストールした画面

  2. Self-hosted LiveSyncをインストールしたら、有効化 をクリックして有効化します。すると、ポップアップが開かれるため、一番下の Use the copied setup URL をクリックします。

  3. 先ほどのセットアップ用のURIを貼り付けて、Okをクリックします。 ObsidianでSelf-hosted LiveSyncの初期化を行っている画面

  4. パスワードを求められるので、先ほどのセットアップ用パスワードを入力し、Okをクリックします。

  5. Importing LiveSync's conf, OK? と表示されるので、OKをクリックします。

  6. How would you like to set it up? と表示されたら、 Set it up as secondary or subsequent device を選択すると、初期設定が開始されます。

  7. Hidden file sync のポップアップが表示されますが、これは keep them disabled を選択します。

Obsidian Git

Self-hosted LiveSyncでは同期はできますが、何らかの要因でデータが消えてしまう不安があるため、Obsidian Gitを使ってバックアップを取ることにしました。これはPC版Obsidianのみに設定しました。また、基本的にバックアップのみが目的のため、定期実行はCommitとPushのみとし、定期的なPullは無効化しました。

GitHub - Vinzent03/obsidian-git: Integrate Git version control with automatic backup and other advanced features in Obsidian.md
Integrate Git version control with automatic backup and other advanced features in Obsidian.md - Vinzent03/obsidian-git
GitHub - Vinzent03/obsidian-git: Integrate Git version control with automatic backup and other advanced features in Obsidian.md favicon github.com
GitHub - Vinzent03/obsidian-git: Integrate Git version control with automatic backup and other advanced features in Obsidian.md

参考にしたサイトなど

Obsidianの同期について (Windows + iPhone)|wolf_horo
ここ最近、サブスクの整理をしており、Obsidian Syncも解約候補にあがりました。Obsidian Syncとは月10ドル(およそ1500円)で複数のデバイス間のObsidianのvaultを同期できる公式サービスです。 筆者は9ヶ月程、Obsidian Syncを使っていましたが、これまで一度もConflictが発生したことは無く、素晴らしいサービスだと思います。 しかし、メモアプリの同期に月10ドル(年払いで8ドル/月)はあまりに高い!  今回、筆者はObsidian Syncの代替手段を探し回り、 現在(2024/01/04)時点での個人的な結論(諦め)に辿り
Obsidianの同期について         (Windows + iPhone)|wolf_horo favicon note.com
Obsidianの同期について         (Windows + iPhone)|wolf_horo
Obsidian Gitを導入してみた
Obsidian Gitを導入してみた favicon zenn.dev
Obsidian Gitを導入してみた
obsidian-livesync/README.md at main · vrtmrz/obsidian-livesync
Contribute to vrtmrz/obsidian-livesync development by creating an account on GitHub.
obsidian-livesync/README.md at main · vrtmrz/obsidian-livesync favicon github.com
obsidian-livesync/README.md at main · vrtmrz/obsidian-livesync