将 Immich 从 Docker 迁移到 NixOS

主要观点:介绍将 Immich 部署从 Docker 迁移到原生 NixOS 模块的方法及原因,强调迁移过程中的准备工作、配置迁移、数据库迁移等步骤。
关键信息

  • 迁移前提:原 Immich Docker 部署已由 NixOS 管理,使用主机的 PostgreSQL 数据库,此迁移更易。
  • 迁移原因:Docker 部署慢,需手动更新,而 NixOS 模块由 nixpkgs 维护,维护和配置工作少。
  • 准备工作:备份数据库和媒体库,迁移数据前关闭 Immich 容器。
  • 配置迁移:扔掉容器配置,用services.immich模块替代,可扔掉数据库和 redis 配置。
  • 数据库迁移:利用 PostgreSQL 的regexp_replace函数在数据库中直接进行文件路径的查找替换,将upload/替换为新的媒体位置路径。
    重要细节
  • 不同版本情况:所有步骤基于 Immich 1.123.0,未来版本可能不同。
  • 配置示例:给出services.immich模块的配置示例及相关注释。
  • 数据库路径相关:Immich 数据库中文件路径以upload/...开头,迁移时需替换为新的媒体位置路径。
  • 迁移过程中的命令:如停止和启动 Immich 服务的命令、在 PostgreSQL 中进行查找替换的命令等。
阅读 12
0 条评论