Can someone please help me understand where Immich stores assets? I've read the documentation regarding external libraries and storage templates, but am still confused.
I may have lost a significant part of my library: a large number of assets display a blurry thumbnail and show an error message when I try to view them (see screenshots). That seems to indicate that the images used to be there but now only a database reference still exists. I ran find /usr/src/app/uploads -iname "*image_0010*" in the Docker container (an example of my issue is an image file called "IMG_0010.jpg") and no such file exists.
Here's how I mapped the volume in docker-compose.yaml - I think it's correct, but maybe that trailing "/upload" is a problem?
volumes:
- uploads:/usr/src/app/upload
Here's the directory structure inside the Immich Docker container:
|-- cli
|-- server
`-- upload
|-- backups
|-- encoded-video
| `-- 72be7b0f-b367-42d5-ae86-5d5feaa481ad
|-- library
| `-- 72be7b0f-b367-42d5-ae86-5d5feaa481ad
|-- profile
|-- thumbs
| `-- 72be7b0f-b367-42d5-ae86-5d5feaa481ad
`-- upload
`-- 72be7b0f-b367-42d5-ae86-5d5feaa481ad
Inside upload there's a library dir and a second upload dir. What's the difference? They are vastly different sizes so I'm guessing that upload/library/ is the main library and upload/upload/ is for uploads from the app:
root@433fdc9d55c6:/usr/src/app# du -s -h upload/library/ upload/upload/
246G upload/library/
18G upload/upload/
So my questions so far are:
- Is there a problem with how I mapped my Docker volume (e.g., am I causing recursion issues?)
- What's the difference between
upload/library/andupload/upload/?
I also have a more general question about asset location: if I upload images from the Immich app, I presume they're stored somewhere in the upload dir - if so, does that mean that if I wanted all my photos to be in an external library, I would have to refrain from using the Immich app's upload feature (and roll my own method of uploading images to my external library dir)?
Thanks in advance for any help or explanations you can offer!


