Upload to External Library?
Hi all, I have immich set up in docker with an external library configured (because I don't like your folder structure and I already have my files organized in a human readable way). I'm wondering if there's a way to have any files uploaded directly to immich to be uploaded to that same external library. I have a NAS share with the following directory structure
Data\Photos\2025\August\IMG_1234.JPG
Without modifying anything, immich puts my files into a different volume in the following path
Data\docker\immich\uploads\upload\8d9cd58f-7000-4229-a16c-0a4de809fa94\7c\a6\7ca6ca3e-9752-415d-b32e-1c196d5495a6.jpg
Is there a way to have immich upload files to the first structure?
16 Replies
:wave: Hey @broyuken,
Thanks for reaching out to us. Please carefully read this message and follow the recommended actions. This will help us be more effective in our support effort and leave more time for building Immich :immich:.
References
- Container Logs:
docker compose logs
docs
- Container Status: docker ps -a
docs
- Reverse Proxy: https://immich.app/docs/administration/reverse-proxy
- Code Formatting https://support.discord.com/hc/en-us/articles/210298617-Markdown-Text-101-Chat-Formatting-Bold-Italic-Underline#h_01GY0DAKGXDEHE263BCAYEGFJA
Checklist
I have...
1. :blue_square: verified I'm on the latest release(note that mobile app releases may take some time).
2. :blue_square: read applicable release notes.
3. :blue_square: reviewed the FAQs for known issues.
4. :blue_square: reviewed Github for known issues.
5. :blue_square: tried accessing Immich via local ip (without a custom reverse proxy).
6. :blue_square: uploaded the relevant information (see below).
7. :blue_square: tried an incognito window, disabled extensions, cleared mobile app cache, logged out and back in, different browsers, etc. as applicable
(an item can be marked as "complete" by reacting with the appropriate number)
Information
In order to be able to effectively help you, we need you to provide clear information to show what the problem is. The exact details needed vary per case, but here is a list of things to consider:
- Your docker-compose.yml and .env files.
- Logs from all the containers and their status (see above).
- All the troubleshooting steps you've tried so far.
- Any recent changes you've made to Immich or your system.
- Details about your system (both software/OS and hardware).
- Details about your storage (filesystems, type of disks, output of commands like fdisk -l
and df -h
).
- The version of the Immich server, mobile app, and other relevant pieces.
- Any other information that you think might be relevant.
Please paste files and logs with proper code formatting, and especially avoid blurry screenshots.
Without the right information we can't work out what the problem is. Help us help you ;)
If this ticket can be closed you can use the /close
command, and re-open it later if needed.Upload to External LibraryNo. You can upload to the internal library with storage templating https://immich.app/docs/administration/storage-template
I saw that, but wouldn't that move all my existing photos based on the template too?
Only the internal uploads, it doesn't move anything from external libraries
ok thats a little better, so I'd have to add a new volume to my container to map to /usr/src/app/upload/upload
is there a way to have it not include the storage label or id?
or would I have to just map the upload folder to /usr/src/app/upload/upload/8d9cd58f-7000-4229-a16c-0a4de809fa94 instead?
ok so I just did the migration, and it put the files in /usr/src/app/upload/library/admin/2025/August
Sounds about right
you could migrate to /data/library/admin/2025/August if you want
so in theory I could make a folder on my external directory called Photos/ImmichUploads for example and exclude that as an external library pattern to not have duplicates?
if I map that to the folder
That sounds like a disaster waiting to happen, but yes
https://github.com/immich-app/immich/releases/tag/v1.137.0 for migrating from /usr/scr/app/upload to /data
what would you recommend then? I want the uploads on my NAS
To not put it in an external library
a folder on your nas is fine, just not the same one
ok, then is there a clean way to have immich ingest my existing folder structure without moving files, or am I already doing that with the external library?
I'd like to not have my photos in 2 different places
Existing files -> external library
upload will duplicate them
There is no "change this external to internal" button
ok, that's far from ideal but I suppose the last question I have is, if I have someone upload a bunch of files via immich from a shared link, and I want to drop them into my external library so they're organized the way I want to, is there an easy way for immich to detect and clean up broken images?
or will I need to make a copy of the files they uploaded, then delete them via immich, then scan the external library to pick up the copies?
there are plenty of times that my wife or I go into the actual folder structure to view/copy out images to upload into scrapbooks, etc so having to look at the external library, and then also having to look at the uploads folder is a very bad WAF
There is no easy way to do this, no
It sounds like you want to use something else to upload images actually?
I think I'm going to have them use my nextcloud to upload the photos instead, I was hoping immich would make this easier but I guess not for my use case
why don't you just upload them to immich and use the storage template?