跳转到主要内容

Unraid

Immich 可以通过以下方式轻松安装和更新到 Unraid:

  1. Docker Compose Manager 插件,来自 Unraid 社区插件
  2. Unraid 社区插件提供的社区模板

社区应用模板

信息
  • Unraid模板使用的是社区构建的镜像,并且不受 Immich 官方支持

要从 Unraid CA 安装 Immich,您需要一个已存在的 Redis 和 PostgreSQL 14 容器。如果您尚未安装 Redis 或 PostgreSQL,可以从 Unraid CA 中安装它们,请确保选择 PostgreSQL 14

当 Redis 和 PostgreSQL 运行后,在 Unraid CA 中搜索 Immich,选择列出的模板并填写示例变量。

有关设置社区镜像的更多信息,请参见 这里

Docker-Compose 方法(官方)

信息
  • 本指南使用 Unraid v6.12.10 编写。
  • 需要安装以下插件:Docker Compose Manager
  • 已创建用于图像的 Unraid 共享
  • 如果您的 Unraid 服务器不支持 AVX (例如使用 T610),可能无法正常工作 参见报告

安装步骤

  1. 进入 "插件" 并点击 "Compose.Manager"
  2. 点击 "添加新堆栈",在提示标签时输入 "Immich"
选择插件 > Compose.Manager > 添加新堆栈 > 标签为 Immich
  1. 选择 Immich 旁边的齿轮 ⚙️ 并点击 "编辑堆栈"
  2. 点击 "Compose 文件",然后将 Immich Docker Compose 文件的完整内容粘贴到 Unraid 编辑器中。默认情况下可能包含的任何文本都需要移除。注意 Unraid v6.12.10 使用的是 Docker 引擎的 24.0.9 版本,不支持 Docker Compose 文件中 database 服务定义的健康检查参数 start_interval(需要版本 25 或更高)。通过注释掉 start_intervalstart_period 参数可以使容器正常启动。这唯一的影响是数据库容器在 interval 时间经过之前不会收到初始健康检查。
使用现有的 Postgres 容器?点击我!否则继续到步骤 5。
  • 注释掉数据库服务
  • 在 compose 文件中注释掉数据库服务
  • 每个服务注释掉数据库依赖(下图示例仅显示了两个服务,请确保为所有服务执行此操作)
  • 在 compose 文件中注释掉所有对数据库服务的引用
  • 注释掉卷
  • 注释掉数据库卷
  1. 点击 "保存更改",系统会提示您编辑堆栈 UI 标签,请保持此处为空并点击 "确定"

  2. 选择 Immich 旁边的齿轮 ⚙️,点击 "编辑堆栈",然后点击 "环境文件"

  3. Immich example.env 文件的完整内容粘贴到 Unraid 编辑器中,然后在保存之前编辑以下内容:

    • UPLOAD_LOCATION:在您的 Images Unraid 共享中创建一个文件夹,并输入其绝对路径。例如,我的 "images" 共享中有一个文件夹叫做 "immich"。如果我在终端中浏览到这个目录并键入 pwd,输出是 /mnt/user/images/immich。这正是我需要输入为 UPLOAD_LOCATION 的值。

    • DB_DATA_LOCATION:将其更改为使用 Unraid 共享(最好是缓存池,例如 /mnt/user/appdata/postgresql/data)。这使用的是 appdata 共享。通过运行 mkdir /mnt/user/{share_location}/postgresql/data 创建 postgresql 文件夹。如果使用默认设置,它将尝试使用 Unraid 的 /boot/config/plugins/compose.manager/projects/[stack_name]/postgres 文件夹,但没有权限,从而导致容器持续重新启动。

      您希望存储 Immich 图像的绝对位置
    使用现有的 Postgres 容器?点击我!否则继续到步骤 8。

    更新以下数据库变量以匹配您的 Postgres 容器:

    • DB_HOSTNAME
    • DB_USERNAME
    • DB_PASSWORD
    • DB_DATABASE_NAME
    • DB_PORT
  4. 点击 "保存更改" 然后点击 "Compose 启动",Unraid 将开始在弹出窗口中创建 Immich 容器。完成后,您将在弹出窗口中看到 "连接已关闭" 的信息。点击 "完成" 并转到 Unraid "Docker" 页面

    注意:这可能会根据您的网络速度和 Unraid 硬件需要几分钟时间

  5. 进入 Docker 页面,您会看到多个 Immich 容器,其中一个被标记为 immich_server 并带有端口映射。在浏览器中访问显示的 IP:PORT,您应该会看到 Immich 管理设置页面。

进入 Docker 选项卡并访问标记的对应地址 immich-web
使用 FolderView 插件组织您的 Docker 容器?点击我!否则您已经完成!

如果您正在使用 FolderView 插件,请转到 Docker 选项卡并选择 "新文件夹"。
将其标记为 "Immich" 并使用此 URL 作为徽标:https://raw.githubusercontent.com/immich-app/immich/main/design/immich-logo.png
然后只需选择所有与 Immich 相关的容器再点击 "提交"

进入 Docker 选项卡并访问标记的对�应地址 immich-web进入 Docker 选项卡并访问标记的对应地址 immich-web
提示

有关应用安装后如何使用的更多信息,请参阅 安装后指南

更新步骤

危险

请务必阅读一般 升级指南

更新非常简单,但请注意,用 Docker Compose Manager 插件管理的容器不会与 Unraid 的原生 dockerman UI 集成,标签 "更新就绪" 在通过 Docker Compose Manager 安装的容器上始终显示。

Docker Compose 容器总是显示更新就绪,无需理会

您应该忽略 Unraid WebUI 上的 "更新就绪",并在 Immich WebUI 中收到通知时进行更新。

Immich 更新通知
  1. 进入 "Docker" 选项卡并滚动到 Compose 部分
  2. 在 Immich 旁边点击 "更新堆栈" 按钮,Unraid 将开始更新所有与 Immich 相关的容器。

    注意:不要 首先选择 Compose Down,这是不必要的。

  3. 完成后,您会看到弹出窗口上的 "连接已关闭" 信息,点击 "完成"。 等待连接关闭并点击完成
  4. 返回到 Immich WebUI,您会看到版本已更新到最新。 等待连接关闭并点击完成