Self-hosted LiveSyncとFly.ioを使って、Obsidianのメモを無料で同期する
はじめに
メモアプリとしてObsidianを使っているのですが、メモの複数端末間での同期が有料プランになっているのが唯一のネックで、iPhoneでのメモはGitHub issueに書いていました。
サードパーティの同期方法はいくつか存在していてそれぞれ試したのですが、これといったものがない状態でした。
サードパーティの同期プラグインの一つであるSelf-hosted LiveSyncについても存在は以前から知っていましたが、ドキュメントに記載のIBM Cloudを利用しようとした際に、IBM Cloudへのクレジットカード登録が上手く出来ず、利用を諦めていました。
Obsidianにfly.ioでSelf-hosted LiveSyncを設定するという記事を見かけて、IBM Cloud以外でも出来そうと分かったので参考にしつつやってみた所、Obsidianライフがめちゃくちゃ快適になったので、だれかの参考になればと思い記事にします。
設定環境
- MacBook Air M1, 2020
- macOS Ventura 13.6
手順
fly.ioのコントロール用CLIをインストール
Macなら、Homebrewでインストールできました。
fly.ioへサインアップ
上記実行すると、ブラウザでfly.ioの登録画面へ遷移するので会員登録します。
Applicationセットアップ
このあと設定ファイルなどが作成されるので、作業ディレクトリなど作るとよいです。
fly.tomlファイルを作成します。nrtリージョンが東京らしいです。
ディスクを作成します。
fly.toml が生成されているはずなので、編集します。
Dockerfileを用意します。
CouchDBのパスワードを設定します。
デプロイします。
fly.tomlへ記載した https://<任意のアプリ名>.fly.dev
というURLでアクセス可能になっているはずです。
CouchDBのセットアップ
https://<任意のアプリ名>.fly.dev/_utils/
へアクセスすると、ログイン画面が出てくるので、fly.tomlへ記載したCOUCHDB_USERのユーザ名とflyctl secretsで指定したCOUCHDB_PASSWORDでログインします。
設定画面で、Setup Apache CouchDBを開いて、Configure a Single Nodeをすすめます。 ユーザ名、パスワードを設定して、完了します。
Obsidian側のSelf-hosted LiveSyncを設定する
こちら側は上記で設定したユーザ名、パスワード、DBのURL等をSelf-hosted LiveSyncの🛰マークの設定に入力していくだけで完了です。
その他
- fly.ioに CouchDBのイメージがあるんですが、これを利用すると定期的にSelf-hosted LiveSyncの接続が切れる状態になってしまいました。
- 原因は不明ですがDockerfileに変更すると事象が解消したので、Dockerfileを利用するのがおすすめです。
- iPhoneの設定でObsidianのモバイル通信をOFFにしておくと、WiFi接続時のみ同期するようになり通信量を抑えられるのでおすすめです。