--
:
--
:
--
hugo-teek is loading...
部署
最后更新于:
部署
目录
[toc]
环境
1docker 19.03.9
2docker-compose version v2.23.0
3系统:CentOS Linux release 7.6.1810 (Core)
硬件要求
- 最低配置:2 核 CPU + 4G 内存(照片量 < 1 万张)
- 推荐配置:4 核 CPU + 8G 内存(照片量 1-5 万张,支持 AI 人脸识别)
- 存储:本地照片目录需提前规划(建议单独挂载大容量磁盘,避免系统盘占满)
1、启动容器
(1)创建基础目录:
1cd /root
2mkdir immich
3##创建以下2个文件
(2)创建docker-compose.yaml:
vim /root/immich/docker-compose.yaml
1# 基于官方模板制作
2# 官方文档
3# https://immich.app
4# 官方compose教程
5# https://immich.app/docs/install/docker-compose
6# 官方变量说明
7# https://immich.app/docs/install/environment-variables
8# 官方CLIP说明
9# https://immich.app/docs/features/command-line-interface
10# 官方硬件转码说明
11# https://immich.app/docs/features/hardware-transcoding
12# https://hub.docker.com/r/tensorchord/pgvecto-rs
13
14# 如果官方的镜像不好拉取,可以选择拉取以下两个镜像作为替代,部署参数完全相同,将模板上对应的镜像进行修改即可,tag也是release
15# https://hub.docker.com/r/altran1502/immich-server
16# https://hub.docker.com/r/altran1502/immich-machine-learning
17
18# ---
19
20name: immich
21# 最后编辑时间:2025-02-14
22services:
23 immich-server:
24 # 镜像地址
25 image: ghcr.nju.edu.cn/immich-app/immich-server:${IMMICH_VERSION:-release}
26 # 容器名
27 container_name: immich_server
28 # 主机名
29 hostname: immich-server
30 volumes:
31 # 请去.env修改路径
32 - ${UPLOAD_LOCATION}:/usr/src/app/upload
33 - /etc/localtime:/etc/localtime:ro
34 - /root/immich/local-photos:/mnt/external/old-photos:ro
35 # 配置文件,指定版本,指定相册路径,数据库路径
36 env_file:
37 - .env
38 # 调用数据库
39 depends_on:
40 - redis
41 - database
42 # 健康检查
43 healthcheck:
44 disable: false
45 # webUI端口
46 ports:
47 - 2283:2283
48 # 重启策略,总是重启
49 restart: always
50
51 immich-machine-learning:
52 # 镜像名称
53 image: ghcr.nju.edu.cn/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}-openvino
54 # 容器名
55 container_name: immich_machine_learning
56 # 主机名
57 hostname: immich_machine_learning
58 volumes:
59 #修改机器学习模型存储路径
60 - /docker/apps/immich/model-cache:/cache
61 # 配置文件,指定版本,指定相册路径,数据库路径
62 env_file:
63 - .env
64 # 健康检查
65 healthcheck:
66 disable: false
67 # 重启策略,总是重启
68 restart: always
69
70 redis:
71 # 镜像名称
72 image: docker.io/redis:6.2-alpine
73 # 容器名
74 container_name: immich_redis
75 # 主机名
76 hostname: immich_redis
77 # 健康检查
78 healthcheck:
79 test: redis-cli ping || exit 1
80 # 重启策略,总是重启
81 restart: always
82
83 database:
84 # 镜像名称
85 image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0
86 # 容器名
87 container_name: immich_postgres
88 # 主机名
89 hostname: immich_postgres
90 # 配置文件
91 environment:
92 # 数据库用户
93 POSTGRES_USER: ${DB_USERNAME}
94 # 数据库密码
95 POSTGRES_PASSWORD: ${DB_PASSWORD}
96 # 数据库名称
97 POSTGRES_DB: ${DB_DATABASE_NAME}
98 POSTGRES_INITDB_ARGS: '--data-checksums'
99 volumes:
100 # 请去.env修改路径
101 - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
102 # 健康检查
103 healthcheck:
104 test: >-
105 pg_isready --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" || exit 1;
106 Chksum="$$(psql --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" --tuples-only --no-align
107 --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')";
108 echo "checksum failure count is $$Chksum";
109 [ "$$Chksum" = '0' ] || exit 1
110 interval: 5m
111 start_interval: 30s
112 start_period: 5m
113 command: >-
114 postgres
115 -c shared_preload_libraries=vectors.so
116 -c 'search_path="$$user", public, vectors'
117 -c logging_collector=on
118 -c max_wal_size=2GB
119 -c shared_buffers=512MB
120 -c wal_compression=on
121 # 重启策略,总是重启
122 restart: always
(3)创建.env:
vim /root/immich/.env
1# immich照片存储路径
2UPLOAD_LOCATION=/docker/apps/immich/library
3
4# postgres数据库存储路径,这里建议存储在/docker/apps/immich目录下,方便管理。
5DB_DATA_LOCATION=/docker/apps/immich/postgres
6TZ=Asia/Shanghai
7
8#要使用的immich版本。您可以将其固定到特定版本,如“v1.71.0”
9IMMICH_VERSION=release
10
11#postgres数据库的访问用户和密码
12DB_USERNAME=postgres
13DB_PASSWORD=postgres
14#postgres数据库名称
15DB_DATABASE_NAME=immich
(4)直接运行:
1[root@one-local-vm immich]#pwd
2/root/immich
3[root@one-local-vm immich]#ls
4docker-compose.yaml local-photos
5[root@one-local-vm immich]#docker-compose up -d
2、登录验证
登录后,直接下一步就好:













3、日常维护
- 停止/重启 Immich
1# 停止服务
2docker-compose down
3
4# 重启服务(配置修改后需重启)
5docker-compose restart
- 查看日志(排查问题)
1# 查看所有容器日志
2docker-compose logs -f
3
4# 只看 immich-server 日志(常用)
5docker-compose logs -f immich-server
- 更新 Immich 到最新版本
1# 进入部署目录
2cd /opt/immich
3
4# 拉取最新镜像
5docker-compose pull
6
7# 重启服务(应用更新)
8docker-compose up -d
引用
官方链接:https://docs.immich.app/install/docker-compose
📡
👤
作者:
余温Gueen
🌐
版权:
本站文章除特别声明外,均采用
CC BY-NC-SA 4.0
协议,转载请注明来自
余温Gueen Blog!
推荐使用微信支付

推荐使用支付宝
