20 ポイント 投稿者 davespark 2026-02-01 | まだコメントはありません。 | WhatsAppで共有

Immichを使って、アルバム・説明・位置情報・日付・お気に入りなどの変更を写真ファイル自体のEXIFに保存するようにし、データベースなしでもSynology NAS + Dropboxで自動バックアップされる、非常に堅牢な写真管理システムを構築した。

中核となる思想(3つの優先順位)

  1. Preserve(保存): 数十年先の将来でも問題なく維持できること
  2. Unify(統合): 夫婦の複数台のスマートフォン写真を1つのライブラリに集約すること
  3. Experience(体験): 写真・動画を通じて思い出を再び鮮やかに感じられること

背景とこれまでのやり方

  • 20年以上にわたり写真管理ワークフローを発展させてきた
  • すべてのメタデータ(アルバム、説明、お気に入りなど)をEXIFのみに保存 → 外部DBに依存しない → 長期保存に最適
  • 主ストレージ: Synology NAS
  • 整理ツール: 本人が10年以上開発してきたオープンソースCLIツール Elodie (https://github.com/jmathai/elodie)
  • 過去: Google Photosを読み取り専用ビューアとして活用 → 発見・検索・思い出の再体験機能は良かったが、2019年のポリシー変更 + プライバシー問題で断念
  • Synology Photosは機能があまりにも乏しく、代替が必要だった

Immich導入(2025年末 ~ 2026年)

  • Immichの**外部ライブラリ(external library)**機能(読み取り専用フォルダのマウントが可能)が決め手
  • 最初は読み取り専用ビューアとして開始 → 後に整理ツールへ完全移行
  • 問題点: Immichのデフォルト動作ではメタデータをPostgres DBまたはXMPサイドカーに保存 → 著者はその両方を拒否
    すべての変更を写真ファイルのEXIFに直接埋め込むカスタム方式を開発

主な実装方法

  • Immich APIを活用 → UIでアルバム追加・説明作成・お気に入り設定などを行うと → EXIFに記録
  • Elodieとの連携: Elodieがアルバムフォルダへファイルを移動 + EXIF更新 → Immichはこれをファイル削除+生成として認識 → 一時的な不一致が発生
    → 解決策: **eventually consistent(結果整合性)**方式を採用 → 遅延反映を許容
  • XMPサイドカーは使用しない(脆弱だと判断)
  • 結果: ImmichがGoogle Photos級の発見・検索・思い出再体験の体験を提供しつつ、EXIFだけですべての情報を保存

使用ツール & バックアップ戦略

  • Immich(外部ライブラリ + API活用)
  • Elodie(ファイルシステムのマッピング & 整理の中核エンジン)
  • Synology NAS → 主ストレージ
  • Dropbox → 自動バックアップ(EXIF変更 → ファイル自体の変更 → 自動同期)
  • カスタムプラグイン: https://github.com/jmathai/immich-exif (簡易版)
  • 進捗追跡: https://github.com/jmathai/elodie/issues/496

利点

  • データベースなしでEXIFだけによる完全保存 → 10年後、20年後でも問題なし
  • Google Photosのような豊かなUI/発見体験を復元
  • プライバシー・依存性の問題を解決
  • NAS + Dropboxの二重バックアップで安定性を最大化

欠点 & 現実

  • 設定難易度が非常に高い(著者でも2週間かかり、AIの助けがあっても簡単ではない)
  • Immichの基本設計と衝突する部分が多く、カスタマイズが必須
  • リアルタイム反映ではなく遅延反映(eventually consistent)方式のため、完全なリアルタイム性はない

結論のニュアンス

著者は、長年守り続けてきた「EXIFだけを信じていこう」という哲学をまったく手放すことなく、Immichによって読み取り専用ビューアから完全な整理+発見プラットフォームへアップグレードすることに成功したと評価している。
詳細な技術実装は別の記事で公開予定とのことなので、興味があればGitHub Issueや本人のブログを引き続き追いかけるとよさそうだ。

まだコメントはありません。

まだコメントはありません。