跳转到主要内容

文件自定义位置

本指南解释了如何使用Docker的卷挂载将生成的文件和原始文件存储在不同的位置。

备份

遵循本指南后,如果使用自动备份工具,请记住更新备份设置以备份新的备份路径,特别是 profile/

在我们的 .env 文件中,我们将定义我们想要使用的路径。请注意,您不必定义所有这些:UPLOAD_LOCATION 将是默认存储文件的基本文件夹,其他路径为覆盖路径。

.env
# 您可以在 [这里](/docs/install/environment-variables) 找到所有支持的环境变量的文档

# 自定义位置,用于存储上传文件、缩略图和转码视频文件
- UPLOAD_LOCATION=./library
+ UPLOAD_LOCATION=/custom/path/immich/immich_files
+ THUMB_LOCATION=/custom/path/immich/thumbs
+ ENCODED_VIDEO_LOCATION=/custom/path/immich/encoded-video
+ PROFILE_LOCATION=/custom/path/immich/profile
+ BACKUP_LOCATION=/custom/path/immich/backups
...

在定义了这些文件的位置后,我们将相应地编辑 docker-compose.yml 文件,并将新变量添加到 immich-server 容器中。这些路径是容器内部挂载的位置,因此不要更改这些。

docker-compose.yml
services:
immich-server:
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
+ - ${THUMB_LOCATION}:/usr/src/app/upload/thumbs
+ - ${ENCODED_VIDEO_LOCATION}:/usr/src/app/upload/encoded-video
+ - ${PROFILE_LOCATION}:/usr/src/app/upload/profile
+ - ${BACKUP_LOCATION}:/usr/src/app/upload/backups
- /etc/localtime:/etc/localtime:ro

在完成此更改后,您需要将文件移动到新的文件夹,以确保 Immich 能够找到所有需要的内容。如果您还没有上传任何重要内容,您也可以通过删除数据库文件夹完全重置 Immich。 然后重启 Immich 以注册更改:

docker compose up -d
备注

由于Docker绑定挂载的基本属性,如果 upload/library/ 文件夹在同一设备上,不建议将它们作为单独的绑定挂载。 因此,我们将硬盘驱动器(HDD)或网络存储(NAS)挂载到 /usr/src/app/upload,然后将我们希望访问的文件夹挂载到该文件夹下。

thumbs/ 文件夹包含时间线中显示的小缩略图以及点击图片时显示的更大预览图。这些不能分开存储。

Immich 服务器的存储指标将跟踪 UPLOAD_LOCATION 的可用存储,因此管理员必须设置某种监控以确保存储空间不会耗尽。而 profile/ 文件夹通常非常小,通常小于 1 MB。