ソフトウェア/obsidian の変更点

更新


[[公開メモ]]

* 使い勝手の良い MarkDown 形式のメモアプリとして obsidian が有名らしいです [#hed59595]

例えば以下のような記事が見つかります。

さようなら、全てのエヴァーノート - 本しゃぶり~
https://honeshabri.hatenablog.com/entry/Evernote_to_Obsidian

ローカル環境で動作し、Markdownで書いたノートをつなげるアプリ「Obsidian」とは - 増井敏克~
https://gihyo.jp/article/2022/11/obsidian-01

個人的には数式を含めた長大な MarkDown をもたつくことなく表示してくれるので助かっています。~
(Boostnote だと長くなるともたついて仕事にならなかったり)

* 目次 [#a2304148]

#contents

* 自家サーバーで obsidian を動かす [#p6e65fc3]

Obsidian の Self-hosted LiveSync を使ってみた - [[kogad's blog>https://kogad.net/]]~
https://kogad.net/posts/obsidian-self-hosted-live-sync

Apache CouchDB の公式 Docker イメージ~
https://hub.docker.com/_/couchdb

CouchDBのセットアップ方法 - obsidian-livesync/docs/setup_own_server_ja.md~
https://qiita.com/RYO_/items/3d27598ca2e0651f6c64

あたりを見ながらやりました

** データベースの設置 [#a7b95bd1]

docker で CouchDB を動かすのが良いようです

CouchDBのセットアップ方法 - obsidian-livesync/docs/setup_own_server_ja.md~
https://qiita.com/RYO_/items/3d27598ca2e0651f6c64

をほぼそのままなぞる形で、

couchdb-obsidian-server.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

を作成し、

 LANG: console
 $ docker run -d --restart always -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=<password> -v ./couchdb-obsidian-server.ini:/opt/couchdb/etc/local.ini -p 5984:5984 couchdb

これでサーバーが起動しました。

** https でアクセス可能にする [#g5ae460e]

apache2 が動作しているサーバーだったので、

/etc/apache2/sites-enabled/default-ssl.conf に
     <Location /path/to/db>
         Order deny,allow
         Allow from all
     </Location>
     RequestHeader set X_FORWARDED_PROTO 'https'
     ProxyPass /path/to/db http://localhost:5984/
     ProxyPassReverse /path/to/db http://localhost:5984/

を追加することで https://example.com/path/to/db へアクセスすると CouchDB へのログインを求められるようになりました。

** Obsidian の設定 [#q703bf4e]

Obsidian の左下の歯車マークをクリック~
&ref(Pasted image 20240416130311.png,,50%);

左側でコミュニティプラグインを選択して「コミュニティプラグインを有効化」~
&ref(Pasted image 20240416130427.png,,50%);

コミュニティプラグインの「閲覧」~
&ref(Pasted image 20240416130605.png,,50%);

検索ボックスで livesync を検索して「インストール」~
&ref(Pasted image 20240416125855.png,,50%);

Welcome画面で Open setting dialog~
&ref(Pasted image 20240416130909.png,,50%);

Remote Database configuration にて 
- URI = https://example.com/path/to/db
- Username = admin
- Password = <password> (コンソールで与えた値)
- Database name = obsidian (任意に設定可能)

を与え、
- [Test] で "Connected to <Database name>" と表示されれば Ok
- [Check] でエラーがないことも確認しておく

&ref(Pasted image 20240416131212.png,,50%);

Sync Settings の Presets で LiveSync を選択して Apply~
&ref(Pasted image 20240416193710.png,,50%);

~

** ここで obsidian を閉じて、再度起動します [#x5613c52]

これをしないといろいろうまく行かなくて苦労することにorz

たぶんこれで同期がとれるようになったはず。

* 便利そうなプラグイン [#d41fa8f4]

- Self-hosted LiveSync 自家サーバーを介したライブ同期を実現する
- ReadInLator Webページをクリップして後で読めるようにする
- Text Extractor & Omnisearch 画像からテキストを抽出&検索できるようにする

* 不具合対処 [#d58605d2]

** HTTP:GET failed / TypeError:Failed to fetch / Replication error / There was a problem getting docs. [#te8dea68]

 2024/5/7 1:00:57->Replication activated
 2024/5/7 1:01:00->HTTP:GET to:/<hogehoge>.md?revs=true&latest=true&open_revs=<foobaa> -> failed
 2024/5/7 1:01:00->TypeError:Failed to fetch
 2024/5/7 1:01:00->Replication error
 2024/5/7 1:01:00->Error:There was a problem getting docs.
 2024/5/7 1:01:00->Replication stopped.
 2024/5/7 1:01:00->Replication error

のようなエラーが出て同期ができなくなってしまった。

データベースへの書き込みはできているみたいだけれど、データを読み出せない。

~<hogehoge> の部分には % でエスケープされた文字列が並んでおり、URL デコードすれば記憶にある日本語ファイル名が表示される。





* コメント&質問 [#lde72809]

#article_kcaptcha

Counter: 194 (from 2010/06/03), today: 3, yesterday: 0