找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

3241

积分

0

好友

415

主题
发表于 7 天前 | 查看: 139| 回复: 0

手机自动备份、AI 人物识别、RAW/HEIC 全支持,数据完全落盘本地!一条命令,就能把 Google Photos 的便捷体验部署到自己的服务器上。

一、Immich 是什么

核心亮点

  • 自动后台备份:通过官方 iOS/Android App 实现。
  • 智能 AI 识别:支持人物、宠物识别、地理位置标注及相似图片去重。
  • 广泛格式支持:完美处理 RAW、HEIC、LivePhoto,并提供 4K 视频转码。
  • 丰富功能:WebDAV 导入、共享相册、地图轨迹浏览、离线访问等。
  • 数据自主可控:所有数据存储于本地,无需担心云服务关闭或隐私扫描。

二、部署前置条件

  • 操作系统:Linux / macOS / Windows (WSL2),且已安装 Docker 及 Docker Compose v2+。
  • 硬件建议:2 核 CPU、4 GB 内存或以上,使用 SSD 可显著加速缩略图生成。
  • 网络:确保服务器上的 2283 端口(可自定义)对外开放。

三、方式 A:单容器快速体验

注意:此方式仅适用于快速尝鲜。官方推荐的生产部署方案是下文的方式 B。单容器模式内置数据库,升级容器可能导致数据丢失。

  1. 首先,创建必要的目录并进入:
    mkdir -p ~/immich-lite/library ~/immich-lite/cache && cd ~/immich-lite
  2. 拉取社区维护的一体化镜像并启动(该镜像已内置 PostgreSQL 和 Redis):
    docker run -d --name immich \
      -p 8080:8080 \
      -e DB_PASSWORD=immichpass \
      -v $PWD/library:/library \
      -v $PWD/cache:/cache \
      ghcr.io/imagegenius/immich:latest

提示:所有缩略图与数据库文件均写入本地的 librarycache 目录,删除容器即清空数据。

Docker单容器部署Immich命令执行终端截图

  1. 访问 http://<你的服务器IP>:8080,注册一个管理员账号,然后上传几张照片以验证 Web 界面工作正常。

四、方式 B:官方 Docker Compose 部署(生产推荐)

此方式包含完整的 AI 机器学习服务,适合长期稳定使用,也是 Immich 官方推荐的方法。

  1. 下载官方编排文件和环境变量示例:

    mkdir -p ~/immich && cd ~/immich
    wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
    wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
  2. 根据需要编辑 .env 文件,配置存储路径、端口和密码等关键参数:

    # 示例关键变量
    UPLOAD_LOCATION=./library          # 照片/视频主存储目录
    DB_DATA_LOCATION=./postgres        # 数据库文件目录
    IMMICH_VERSION=release             # 使用稳定版,也可指定如 v1.131.0
    DB_PASSWORD=immichpass             # 数据库密码

    其余配置通常保持默认即可。如需修改时区,可追加 TZ=Asia/Shanghai

  3. 使用 Docker Compose 启动所有服务:

    docker compose up -d

    首次运行会拉取 5 个镜像:immich-serverimmich-proxypostgresredisimmich-machine-learning。启动后内存占用约 1 GB,服务监听 2283 端口。

  4. 检查服务状态与日志:

    docker compose ps           # 查看5个容器的状态,STATUS显示为Up即成功
    docker compose logs -f      # 跟踪实时日志,用于排查问题
  5. 未来升级版本时,只需执行:

    docker compose pull && docker compose up -d

五、验证:手机自动备份演示

  1. 浏览器访问 http://<你的服务器IP>:2283,注册首个管理员账号。
  2. 在 iOS/Android 应用商店搜索“Immich”,安装官方 App。
  3. 打开 App,授予“照片读取”权限,开启“自动备份”功能,建议选择“仅 Wi-Fi”模式以节省流量。
  4. 返回手机相册拍摄一张新照片,Immich App 会立即显示备份进度。此时刷新 Web 端页面,就能看到新上传的照片,系统 AI 也开始自动生成缩略图并进行人脸聚类。至此,部署验证完成 ✅

六、常见问题速查

  • 端口冲突:编辑 docker-compose.yml,将 2283:8080 改为其他端口如 8080:8080,并同步修改 .env 文件中的 IMMICH_PORT 变量。
  • 使用外部存储:将 .env 中的 UPLOAD_LOCATION 指向 NAS 挂载点(例如 /mnt/nas/immich),并确保运行容器的用户(默认 UID 1000)对该目录有写入权限。
  • 服务器内存不足:可以在 docker-compose.yml 中,为 immich-machine-learning 服务添加资源限制来降低内存占用,例如:
    deploy:
      resources:
        limits:
          memory: 1G
  • 数据备份:定期使用 pg_dump 命令备份 PostgreSQL和Redis 数据库,并结合 rsync 等工具同步 UPLOAD_LOCATION 目录下的媒体文件,即可实现完整的数据迁移。

完成以上步骤,你的“私有 Google Photos”就已正式上线!现在可以打开手机 App,放心地关掉那些“原图同步到云端”的选项,在享受便捷备份与管理的同时,牢牢掌控自己的数据与隐私。快拍一张照片,体验 AI 如何自动为你整理相册吧!

如果你在部署过程中遇到其他问题,或想分享自己的配置心得,欢迎来 云栈社区 的对应板块与大家一起交流讨论。




上一篇:如何在Java应用中内嵌ZLMediaKit流媒体服务(跨平台实现)
下一篇:在Ubuntu 24.04上安装JSON Server,快速为前端开发搭建模拟API
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-2-23 13:05 , Processed in 0.570434 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表