myesn

myEsn2E9

hi
github

私有云相册解决方案

需求#

实现家庭云相册,释放手机存储空间,避免照片随着手机 GG 而 GG 的尴尬,并且自建云相册使得你的隐私掌握在自己手中,而不必担心在公有云中被扫描窥视外泄等不爽,并实现网速自由等。

经过 Google 之后,发现 Immich 开源项目非常的受欢迎,并且其已有功能也符合上述需求,并且还超越了需求,拥有更多令人惊叹的功能,比如支持多用户相册管理等。

安装 & 运行#

通过官方详尽且丰富的 安装文档,相信在安装和运行这块,不会产生困扰,我使用的是 Docker Compose 的部署方式。

一旦运行成功,可以通过网页和 APP 的方式来管理相册,并且提供 CLI 批量上传,也就是说支持三种不同形式的客户端

  • 网页通过访问 http://[server_ip]:2283

  • APP 提供 Android/IOS:Mobile App | Immich 支持前台运行时和后台自动备份

    如果 APP 无法登录到服务器,可能的原因有:

    • 服务器防火墙入站规则中没有允许 2283 TCP 端口,当然你也可以直接禁用防火墙
    • APP 版本太低了,服务器版本太高,只需将 APP 升级至 latest
  • CLI 批量上传:Bulk Upload (Using the CLI) | Immich

当然这只是它提供的最基础的功能,想了解更多功能,请参阅文档:immich.app/docs

数据迁移#

如果先前已经在某个 Immich 服务器上传了很多照片,但由于某些原因使得该服务器必须下线,这时数据迁移变得至关重要,也就是将数据原封不动的移动到新的服务器上面,官方提供了相应的文档,这分为两个部分:

  1. Postgres 数据库的 Backup 和 RestoreBackup and Restore | Immich

    如果你跟我一样,是在 Windows 上运行 Docker Desktop,那么可能需要将文档中的命令替换成如下所示:

    • Backup(当然需要将磁盘路径替换为你自己的):

      docker exec -t immich_postgres pg_dumpall -c -U postgres > "D:\dev\containers\immich\backup\dump.sql"
      
    • Restore:先按照文档所示,然后跳过 sleep 10 命令,因为 Windows 中没有它啊(你可以通过 docker logs -f immich_postgres 来判断数据库是否启动成功),接着自行解压 Backup 后的文件(如果备份是压缩包形式),通过以下命令来还原数据库(当然需要将磁盘路径替换为你自己的):

      docker exec -i immich_postgres psql -U postgres -d immich < "D:\dev\containers\immich\backup\dump.sql"
      
  2. 照片文件本身的迁移(磁盘文件备份)Backup and Restore | Immich

    其实很简单,就是将磁盘目录移动(下载)到新的服务器上。

当你将以上两个部分都迁移完毕后,记得在相应的位置运行 docker-compose up -d 命令来启动全部的服务。

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。