Images not showing up in WebApp but marked as uploaded in mobile app
Hello, I recently migrated Immich between two servers. I think ever since I did that, any picture I take with my phone does not show up on the webui. Both the mobile app and the webapp can load older images just fine, and both can upload images just fine as well.
I tried:
- Restarting the server
- Touch creating and echoing into a file from inside the docker container (works, the container can write into the storage location)
- Clearing all site data
- Clearing app cache and all data
- Reinstalling app
- Uploading an image via the webui (Shows all ok, no errors, but doesnt show up)
- Uploading an image with the app (Shows all ok, no errors, but doesnt show up)
- Running storage migration
Notes:
- The new server has the storage mounted via an NFS mount
- The NFS mount was unwritable for about a week after the migration (already fixed)
36 Replies
:wave: Hey @Arimodu,
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. :ballot_box_with_check: verified I'm on the latest release(note that mobile app releases may take some time).
2. :ballot_box_with_check: read applicable release notes.
3. :ballot_box_with_check: reviewed the FAQs for known issues.
4. :ballot_box_with_check: reviewed Github for known issues.
5. :ballot_box_with_check: tried accessing Immich via local ip (without a custom reverse proxy).
6. :ballot_box_with_check: uploaded the relevant information (see below).
7. :ballot_box_with_check: 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.Server:
- Immich: Debian 13 Trixie
- Storage: Debian 12/13 (Partial (kernel) upgrade to trixie, waiting for software to update)
Logs from all containers:
Successfully submitted, a tag has been added to inform contributors. :white_check_mark:
Can you enable debug logging in Immich (Admin > Settings > Logging or through env vars), upload an image through web UI, then grab and post logs.
Do you use external library? (EXOS_ROOT and UPLOAD_LOCATION are overlapping, therefore the question)
Sure, will do
I used to have an external library, but I removed that part, since I barely used it. Thats just a remnant at this point
Here are the logs, If you need the redis logs (which really just repeat the same few lines over and over again) then I have those too. Those were the only two containers generating logs in docker compose logs
does not show up on the webui.Could you clarify: is there nothing new at all in web ui upon uploading and refreshing the page OR maybe new thumbnails/placeholders appear but they are inaccessible/blurred? 1. If you go to https://my.immich.app/photos/fc665701-3c23-4f42-88d4-e804ab5e03b0 (substitute your domain / base url) what does it display? This is the asset ID from last logs. Supposedly it should open the image view page. 2. Also check the API response directly in a browser https://my.immich.app/api/assets/fc665701-3c23-4f42-88d4-e804ab5e03b0 (same ID, just different endpoint) It should return JSON with asset metadata (my.immich.app will be resolved to your instance)
The webUI displays images just fine, its only that its stuck at September 3rd. Anything past that date does not show up

Same for the mobile app, except there the images that I took with my phone show up fine, but the ones uploaded via teh WebUI do not, nor do the pictures I took show up on the desktop even when they say they were uploaded
Loading the asset worked, not only that, as soon as I opened it it showed up in the webUI proper. Also, it seems new images now show up as I would expect after opening the asset url, but the ones that were uploaded between Sep 3rd and now are still in limbo
Also, it seems new images now show up as I would expect after opening the asset url, but the ones that were uploaded between Sep 3rd and now are still in limboSorry, not sure if I follow. So correct me if I'm wrong: - You upload new image - It is not visible in web timeline (no thumbnail, no placeholder, just nothing new in the timeline) - Then you open https://my.immich.app/api/assets/UUID (or the
/photos/UUID
?) - with new UUID of that recently uploaded asset
- It opens fine
- Then the image appears in main timeline (its thumbnail now shows up in web timeline)
For images uploaded between Sep 3rd and today there is still nothing in timeline.Yep, exactly that
It also appears in the mobile app too
Your compose does not match what is needed for your immich version
Not to mention you desperately need to move away from pgvectors
Honestly that might be fair. I set this up... I dont even know how long ago and just had cron run the update script once a week
Maybe the server migration finally did it in
Anyway, what are the steps? Do I just yeet my old docker compose and download a fresh one, re-setup the .env and go with that? Or is there some sort of special migration needed?
We very explicitely tell you not to autoupdate like this š
I'm honestly suprised your version is even starting
You should at least have a big chunk of missing imagery
But considering it does start, try indeed yeeting the old compose and using the new one, taking care to match the postgres version
@Arimodu
I know about that, but the "your version is out of date" dialog is too annoying. If it was just like a little badge somewhere, It wouldnt bother me, but because it just pops up over the entire screen every time there is a new version it makes not having it auto update a PIA
Alright, done that. New images now show up just fine, even without having to reload the web UI, but the images that were uploaded during between Sep 3 and Yesterday do not, even when uploading them again says its duplicate. Also this showed up in the logs after taking a picture with my phone and having it upload:
My docker compose looks like this now:
The .env didnt seem to need changing out, that one stayed the same (except the exos root variable which I yeeted now)
And can you find these images on disk?
Can try
Where here would I be looking for them? I can try to search them with everything, but since immich renames them to uuid.extension I dont think ill find anything

I assume the library folder?

Theres more dates with images missing here than in the webui
Actually no
Its just that the timestamps are all over the palce
ĀÆ\_(ć)_/ĀÆ
I can confirm that indeed, the iamges are not here, there is a folder for the 3rd of September and a folder from yesterday and today, but nohing in between
Same thing with VID
trying to edit the metadata on an image that is missing, I get the following error in the logs:
I checked the location in the upload folder, and there is an uuid.jpg.xmp file there, but the image is missing

There also seems to be a single image file in there, but its corrupted
Honestly, should I just yeet the entire upload directory and try again?
I didnt loose any of the original images from my phone or PC so data loss isnt something I worry about
If you want to fix it, they are probably inside your container image
But that's a pain in the ass to get transfered, especially with your upgrades
If nuking is an option, I'd go that way
And in the future make sure your mounts stay mounted, this is what causes this behaviour in the first place š
Nuking the upload directory or the docker image?
all of it, really š
This specific issue wont happen again. I just didnt know NFS defaulted to squash_root, and I have everything running as root
So I just docker image delete everything immich? I know the DB and files are elsewhere, but what about things like settings and users? Is that in the pg db or do I need to keep something around to keep pthose?
Did you want to keep all that?
I'd preffer to not have to resetup my entire family
Right it'll be tricky then
The easiest would be restoring a backup from before it broke
Dont have one that old... but maybe the old server might still have the docker images
But also, wouldnt just deleting the files in the mobile app (where they show up) while having the 20 or so missing files copied elsewhere work?
You can certainly try, don't forget to empty out the trash
I'm kind of expecting it to not work because it can't find them to delete them š
It actually worked....
Thank you very much, I think everything is in order now... Also, I added the capability of downloading a new docker file to my update script, so now when it runs, it also downloads the latest version (since I didnt need to change anything about it, I just got it as it was)