首頁(yè) 收藏 QQ群
 網(wǎng)站導(dǎo)航

ZNDS智能電視網(wǎng) 推薦當(dāng)貝市場(chǎng)

TV應(yīng)用下載 / 資源分享區(qū)

軟件下載 | 游戲 | 討論 | 電視計(jì)算器

綜合交流 / 評(píng)測(cè) / 活動(dòng)區(qū)

交流區(qū) | 測(cè)硬件 | 網(wǎng)站活動(dòng) | Z幣中心

新手入門 / 進(jìn)階 / 社區(qū)互助

新手 | 你問我答 | 免費(fèi)刷機(jī)救磚 | ROM固件

查看: 419|回復(fù): 1
上一主題 下一主題
[分享]

immich開源相冊(cè)管理平臺(tái)搭建-樹莓派4b-OMV環(huán)境

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2025-1-15 13:57 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式 | 來自山東
本帖最后由 kszyd 于 2025-1-15 13:58 編輯

之前發(fā)了一篇用photoprism搭建相冊(cè)管理的帖子,里面含了基礎(chǔ)環(huán)境安裝,詳細(xì)請(qǐng)見:樹莓派4B打造家用NAS備份手機(jī)照片(把大象裝進(jìn)冰箱系列1)。

但由于樹莓派本身配置低,導(dǎo)致photoprism實(shí)際應(yīng)用體驗(yàn)不好。本次嘗試immich(immich項(xiàng)目地址),體驗(yàn)整體要好很多?;A(chǔ)環(huán)境仍然是樹莓派4B,裝了OMV,安裝了OMV-Compose插件,通過此插件將immich鏡像部署上。以下是安裝過程:

1、從compose插件-文件-新建,添加應(yīng)用鏡像;1)復(fù)制/導(dǎo)入docker-compose.yml文件內(nèi)容,2)復(fù)制/導(dǎo)入.env文件內(nèi)容;
2、以下是docker-compose.yml原文內(nèi)容,需要做如下更改:1)將兩處ghcr.io替換成ghcr.nju.edu.cn國(guó)內(nèi)源,將兩處docker.io替換成docker.m.daocloud.io國(guó)內(nèi)源;
2)在- ${UPLOAD_LOCATION}:/usr/src/app/upload 這行下面新增一行外部圖庫(kù)路徑,可用于已有圖庫(kù)的數(shù)據(jù)加載。(真實(shí)圖庫(kù)路徑,本人圖片存放在以下路徑)- /mnt/disk1/old:/media/disk2/new:ro (此路徑是系統(tǒng)真實(shí)路徑,后續(xù)添加外部圖庫(kù)時(shí)需要輸入此路徑,ro表示只讀)。
3)替換 - model-cache:/cache 此行為本地大模型加載映射路徑;如本人把git下來的大模型數(shù)據(jù)放在了./mnt/model-cache下面,完整代碼就是:- ./mnt/model-cache:/cache        #默認(rèn)加載模型數(shù)據(jù)是從國(guó)外鏡像站加載會(huì)很慢,可從國(guó)內(nèi)鏡像站git到本地,復(fù)制到此目錄下。大模型涉及兩類一是中文搜索二是人臉識(shí)別,系統(tǒng)默認(rèn)模型不支持中文語(yǔ)義搜索圖片,可用XLM-Roberta-Large-Vit-B-16Plus替換,人臉識(shí)別模型有buffalo_l(系統(tǒng)默認(rèn))和antelopev2(這個(gè)模型大家都說好),將下載或git下來的數(shù)據(jù)分別存放在/mnt/model-cache/clip/XLM-Roberta-Large-Vit-B-16Plus和/mnt/model-cache/facial-recognition/buffalo_l或antelopev2模型數(shù)據(jù),clip和facial-recognition這兩個(gè)文件夾需自己創(chuàng)建,這一步必須有!系統(tǒng)加載模型數(shù)據(jù)的時(shí)候會(huì)自動(dòng)從這兩個(gè)文件夾下查找。
4)將最后volumes:     model-cache:     這兩行刪除。
docker-compose.yml原文內(nèi)容:
  1. #
  2. # WARNING: Make sure to use the docker-compose.yml of the current release:
  3. #
  4. # https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
  5. #
  6. # The compose file on main may not be compatible with the latest release.
  7. #

  8. name: immich

  9. services:
  10.   immich-server:
  11.     container_name: immich_server
  12.     image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
  13.     # extends:
  14.     #   file: hwaccel.transcoding.yml
  15.     #   service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
  16.     volumes:
  17.       # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
  18.       - ${UPLOAD_LOCATION}:/usr/src/app/upload
  19.       - /etc/localtime:/etc/localtime:ro
  20.     env_file:
  21.       - .env
  22.     ports:
  23.       - '2283:2283'
  24.     depends_on:
  25.       - redis
  26.       - database
  27.     restart: always
  28.     healthcheck:
  29.       disable: false

  30.   immich-machine-learning:
  31.     container_name: immich_machine_learning
  32.     # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
  33.     # Example tag: ${IMMICH_VERSION:-release}-cuda
  34.     image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
  35.     # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
  36.     #   file: hwaccel.ml.yml
  37.     #   service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
  38.     volumes:
  39.       - model-cache:/cache
  40.     env_file:
  41.       - .env
  42.     restart: always
  43.     healthcheck:
  44.       disable: false

  45.   redis:
  46.     container_name: immich_redis
  47.     image: docker.io/redis:6.2-alpine@sha256:905c4ee67b8e0aa955331960d2aa745781e6bd89afc44a8584bfd13bc890f0ae
  48.     healthcheck:
  49.       test: redis-cli ping || exit 1
  50.     restart: always

  51.   database:
  52.     container_name: immich_postgres
  53.     image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
  54.     environment:
  55.       POSTGRES_PASSWORD: ${DB_PASSWORD}
  56.       POSTGRES_USER: ${DB_USERNAME}
  57.       POSTGRES_DB: ${DB_DATABASE_NAME}
  58.       POSTGRES_INITDB_ARGS: '--data-checksums'
  59.     volumes:
  60.       # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
  61.       - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
  62.     healthcheck:
  63.       test: >-
  64.         pg_isready --dbname="${POSTGRES_DB}" --username="${POSTGRES_USER}" || exit 1;
  65.         Chksum="$(psql --dbname="${POSTGRES_DB}" --username="${POSTGRES_USER}" --tuples-only --no-align
  66.         --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')";
  67.         echo "checksum failure count is $Chksum";
  68.         [ "$Chksum" = '0' ] || exit 1
  69.       interval: 5m
  70.       start_interval: 30s
  71.       start_period: 5m
  72.     command: >-
  73.       postgres
  74.       -c shared_preload_libraries=vectors.so
  75.       -c 'search_path="$user", public, vectors'
  76.       -c logging_collector=on
  77.       -c max_wal_size=2GB
  78.       -c shared_buffers=512MB
  79.       -c wal_compression=on
  80.     restart: always

  81. volumes:
  82.   model-cache:
復(fù)制代碼
3、以下是env環(huán)境文件,需做如下更改:
1)將 UPLOAD_LOCATION=./library 此行是手機(jī)上傳照片所用路徑,如本人改成了 UPLOAD_LOCATION=/mnt/disk3/upload
2)像數(shù)據(jù)庫(kù)文件占用空間不大,可不做變動(dòng)。
  1. # You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables

  2. # The location where your uploaded files are stored
  3. UPLOAD_LOCATION=./library
  4. # The location where your database files are stored
  5. DB_DATA_LOCATION=./postgres

  6. # To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
  7. # TZ=Etc/UTC

  8. # The Immich version to use. You can pin this to a specific version like "v1.71.0"
  9. IMMICH_VERSION=release

  10. # Connection secret for postgres. You should change it to a random password
  11. # Please use only the characters `A-Za-z0-9`, without special characters or spaces
  12. DB_PASSWORD=postgres

  13. # The values below this line do not need to be changed
  14. ###################################################################################
  15. DB_USERNAME=postgres
  16. DB_DATABASE_NAME=immich
復(fù)制代碼
4、做完以上配置,immich應(yīng)該能正常運(yùn)行了。

以下是在部署過程中遇到的問題及解決辦法:
1、如加載不成功,可將docker-compose.yml 內(nèi)   -.env 部分改成  -immich.env,(在omv-compose下yml和env環(huán)境文件名稱需一致,本人創(chuàng)建此應(yīng)用時(shí)將此應(yīng)用命名為了immich.yml)。
2、進(jìn)入immich應(yīng)用后地圖顯示英文問題,可參考如下:地圖顯示中文
3、反向地理編碼顯示英文問題,可參考如下:反向地理編碼顯示中文,需要認(rèn)真查看此貼下面的網(wǎng)友回復(fù)。
4、大模型加載是否成功,要用portainer查看immich-machine-learning日志是否有報(bào)錯(cuò)。在用antelopev2模型進(jìn)行人臉檢索時(shí)由于樹莓派配置不足導(dǎo)致任務(wù)失敗,換成buffalo_l則運(yùn)行正常。尤其是在剛部署上進(jìn)行檢索和人臉識(shí)別任務(wù)時(shí)一定要查看immich-machine-learning運(yùn)行日志,從應(yīng)用頁(yè)面是看不到模型運(yùn)行情況的。
遺留問題:反向地理編碼數(shù)據(jù)不足導(dǎo)致有些區(qū)域仍顯示不正常,此問題還沒解決,有類似經(jīng)驗(yàn)的朋友可留言討論!



上一篇:請(qǐng)問我這個(gè)適合哪個(gè)版本的NAS?謝謝大神幫參謀下
沙發(fā)
發(fā)表于 2025-1-15 14:28 | 只看該作者 | 來自廣東
這個(gè)有點(diǎn)東西

本版積分規(guī)則

Archiver|新帖|標(biāo)簽|軟件|Sitemap|ZNDS智能電視網(wǎng) ( 蘇ICP備2023012627號(hào) )

網(wǎng)絡(luò)信息服務(wù)信用承諾書 | 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證:蘇B2-20221768 丨 蘇公網(wǎng)安備 32011402011373號(hào)

GMT+8, 2025-1-15 17:58 , Processed in 0.064715 second(s), 13 queries , Redis On.

Powered by Discuz!

監(jiān)督舉報(bào):report#znds.com (請(qǐng)將#替換為@)

© 2007-2025 ZNDS.Com

快速回復(fù) 返回頂部 返回列表