搭建immich 照片管理工具

图片[1]-搭建immich 照片管理工具-RSG-人生观很多朋友在家里购买服务器,多半都是存储一些照片和影音,如果选择的是群晖或者一些成品oem的机器都会有自带的相册功能,如果你也和我一样使用的是自己DIY的机器,也没有安装那些自带相册功能的系统,比如Ubuntu debian这类发行的Linux系统,所以今天我推荐给大家一个照片的管理工具,immich 目前我也在用,效果还不错。

教程:

介于现在绝大部分的nas或者Linux 的系统都可以安装docker或者docker compose,unriad也可以安装compose插件,所以我就写docker compose的教程。

注意如果是老版本的docker compose 插件,老版本的请在开头增加version: “3” 否者无法启动,新版本compose 取消了。

services: 
  immich-server:
    image: ghcr.io/immich-app/immich-server:release
    container_name: immich-server
    hostname: immich-server
    privileged: true
#nVidia硬件加速参数
    runtime: nvidia
    volumes:
      -  /data/appdata/immich/upload:/usr/src/app/upload  #上传路径映射
      #外部库目录,此文件夹将定期扫描,内容将自动导入immich,需要在immich上进行设置,容器路径可以自定义多个
      -  /data/appdata/immich/local:/local
    environment:
      - IMMICH_PORT=2283
      - REDIS_HOSTNAME=immich-redis 
      - DB_HOSTNAME=immich-pgsql
      - DB_DATABASE_NAME=immich
      - DB_USERNAME=immich
      - DB_PASSWORD=password #此密码是pgsql的密码,要与pgsql的数据库密码相同
#nVidia硬件加速参数
      - NVIDIA_DRIVER_CAPABILITIES=all
      - NVIDIA_VISIBLE_DEVICES=0
      - TZ=Asia/Shanghai
    ports:
      - 2283:2283/tcp
    restart: unless-stopped
    depends_on:
       - immich-redis
       - immich-pgsql
#反代,参数如果你用的不是traefik,请删除
    labels:
      - "traefik.http.routers.immich.rule=Host(`immich.xxxx.com`)"
      - "traefik.enable=true"
      - "traefik.http.services.immich.loadbalancer.server.port=2283"
  immich-machine-learning:
    image: ghcr.io/immich-app/immich-machine-learning:release-cuda
    container_name: immich-machine-learning
    runtime: nvidia
    hostname: immich-machine-learning
    privileged: true
    restart: unless-stopped
    volumes:
      - /data/appdata/immich/cache:/cache ###修改红色的标注为你本地的存储路径
    environment:
      - TZ=Asia/Shanghai
      - NVIDIA_DRIVER_CAPABILITIES=all
      - NVIDIA_VISIBLE_DEVICES=0
  immich-redis:
    image: redis:latest
    container_name: immich-redis
    hostname: immich-redis
    volumes:
      - /data/appdata/immich/redis:/data ###修改红色标注数据库缓存路径到本地存储路径
    restart: unless-stopped
  immich-pgsql:
    image: tensorchord/pgvecto-rs:pg16-v0.2.0
    container_name: immich-pgsql
    hostname: immich-pgsql
    volumes:
      - /data/appdata/immich/pgsql:/var/lib/postgresql/data  ###修改红色标注 数据库存储路径到本地存储路径
    environment:
      - POSTGRES_DB=immich
      - POSTGRES_USER=immich
      - POSTGRES_PASSWORD=password ###此密码要与服务端密码相同
      - TZ=Asia/Shanghai
    restart: unless-stopped

这个compose是我目前再用的,红色标注的部分,需要进行修改immich 一共四个组件

immich-server ###服务端

immich-machine-learning ###AI人脸识别

immich-redis ###数据库缓存

immich-pgsql ###数据库

上面的compose是使用nVidia显卡来做ai识别,还有视频编码加速的,如果是其他硬件,需要对应修改,下面我把其他平台的也写出来示例,但是没有经过测试,如果你们测试了有问题可以在下面留言反馈。

immich-server使用Intel 硬件加速,此加速需要有IGPU才可以,CPU后缀F的可以放弃了。

  immich-server:
    image: ghcr.io/immich-app/immich-server:release
    container_name: immich-server
    hostname: immich-server
    privileged: true
    volumes:
      -  /data/appdata/immich/upload:/usr/src/app/upload
      -  /data/appdata/immich/local:/local
    environment:
      - IMMICH_PORT=2283
      - REDIS_HOSTNAME=immich-redis
      - DB_HOSTNAME=immich-pgsql
      - DB_DATABASE_NAME=immich
      - DB_USERNAME=immich
      - DB_PASSWORD=password
      - TZ=Asia/Shanghai
    ports:
      - 2283:2283/tcp
    restart: unless-stopped
    depends_on:
       - immich-redis
       - immich-pgsql
    devices:
      - /dev/dri:/dev/dri ###Intel vaapi加速
    labels:
      - "traefik.http.routers.immich.rule=Host(`immich.xxxx.com`)"
      - "traefik.enable=true"
      - "traefik.http.services.immich.loadbalancer.server.port=2283"

这就是支持Intel 核显的视频编码解码 加速的配置了,注意自行修改映射路径。

immich-machine-learning使用gpu加速也与服务端相同,增加devices参数删除nvidia的参数即可,修改使用openvino。

  immich-machine-learning:
    image: ghcr.io/immich-app/immich-machine-learning:openvino
    container_name: immich-machine-learning
    hostname: immich-machine-learning
    privileged: true
    restart: unless-stopped
    volumes:
      - /data/appdata/immich/cache:/cache
    environment:
      - TZ=Asia/Shanghai
    devices: 
      - /dev/dri:/dev/dri ###Intel vaapi加速
    restart: unless-stopped

注意这里的镜像和使用nvidia的cuda是不同的我用红色进行了标注。

写好compose之后,linux可以用docker compose up -d 启动,其他nas系统自行处理

启动后使用ip:2283 访问,使用traefik反代的或者其他反代工具的,可以使用反代的域名进行访问。

图片[2]-搭建immich 照片管理工具-RSG-人生观图片[3]-搭建immich 照片管理工具-RSG-人生观

图片[4]-搭建immich 照片管理工具-RSG-人生观图片[5]-搭建immich 照片管理工具-RSG-人生观

图片[6]-搭建immich 照片管理工具-RSG-人生观

图片[7]-搭建immich 照片管理工具-RSG-人生观

图片[8]-搭建immich 照片管理工具-RSG-人生观

到这里初始化就结束了,但是进入系统后,页面时英文的,我们进行修改让系统以中文显示。

图片[9]-搭建immich 照片管理工具-RSG-人生观

图片[10]-搭建immich 照片管理工具-RSG-人生观

图片[11]-搭建immich 照片管理工具-RSG-人生观

设置硬件加速:

我们进入管理页面

图片[12]-搭建immich 照片管理工具-RSG-人生观

在左侧找到设置

图片[13]-搭建immich 照片管理工具-RSG-人生观

在最下面找到视频转码设置

图片[14]-搭建immich 照片管理工具-RSG-人生观

图片[15]-搭建immich 照片管理工具-RSG-人生观

结尾:

到此,基本部署结束,后续还有其他相关immich的内容,我在单独开一篇教程写。

 

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容