Update from OLD version to latest
Hello dear community, I made a mistake and I'm looking for a solution, if someone would be so kind and advise me how to proceed, I found out that:
I had a year old version of immich (unfortunately I don't know which one exactly)
1) The application on my phone was updated and it wouldn't connect me to the server (old server/new androind app), so I did:
2) on my VM server: docker compose pull && docker compose up -d
3) After update container was restarting so : The latest version had an error: https://docs.immich.app/errors/#typeorm-upgrade
4) So I changed the .env file to: v1.132.3 as was suggested in link.
5) Then the server started and is currently running on this version, although with an error that it doesn't display images
6) I found on redit info that people who had the same problem ran "immich-admin change-media-location" in the container
7) But when I got into the container via "exec" it threw me that such a command doesn't exist:
root@f8285f4b0d0f:/usr/src/app# immich-admin change-media-location
Initializing Immich v1.132.3
Detected CPU Cores: 8
error: unknown command 'change-media-location'
8) QUESTION: Should I update to the latest available version now and then run the command "immich-admin change-media-location" again via exec?
Please help with the next step. I don't want to do something I won't be able to undo. (or maybe i already did)
Thank you very much for your advice.
101 Replies
:wave: Hey @sakal.sk,
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.The version of the Immich server, mobile app, and other relevant pieces.
Android have LAST version from PLAY
Server version now is : v1.132.3
Containers all runnig
In container immich_server info from logs:
[Nest] 16 - 10/09/2025, 9:06:18 AM ERROR [Api:GlobalExceptionFilter~91kblrnf] Unknown error: Error: ENOENT: no such file or directory, access 'upload/thumbs/006306c2-2fd2-44b4-b3e9-bbfaa011d4e1/98/20/98209498-3a0f-4c74-9ff4-90a9f1d426db-thumbnail.jpeg'
Error: ENOENT: no such file or directory, access 'upload/thumbs/006306c2-2fd2-44b4-b3e9-bbfaa011d4e1/98/20/98209498-3a0f-4c74-9ff4-90a9f1d426db-thumbnail.jpeg'
at async access (node:internal/fs/promises:605:10)
at async sendFile (/usr/src/app/dist/utils/file.js:53:9)
at async AssetMediaController.viewAsset (/usr/src/app/dist/controllers/asset-media.controller.js:60:13)
I find out there is OLD path: upload
From my point of view this is issue. Maybe i am wrong
Try
docker exec immich_postgres psql -U postgres -d immich -c 'select version, "createdAt" from version_history'
__
I guess that you will have to run a command inside the immich server container to change the path from upload/ to data/
However, I would rather have ask the official team to confirm.
__
root@nasko:/home/docker/Immich# docker exec immich_postgres psql -U postgres -d immich -c 'select version, "createdAt" from version_history'
version | createdAt
---------+-------------------------------
1.132.3 | 2025-10-09 08:23:06.124127+00
(1 row)
root@nasko:/home/docker/Immich#
docker image ls
to get what image were you installed
That's very strange because it suggest you have a whole new instance
root@nasko:/home/docker/Immich# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
ghcr.io/immich-app/immich-server release db67b06ea5bb 5 days ago 1.71GB
ghcr.io/immich-app/immich-machine-learning release 9007cc2391cf 5 days ago 947MB
ghcr.io/immich-app/postgres <none> 2bb282b81e3d 3 weeks ago 754MB
valkey/valkey <none> 8c04e462c120 6 weeks ago 113MB
mostafawahied/portracker latest 678ab7ce2718 2 months ago 513MB
ghcr.io/immich-app/immich-server v1.132.3 4ef370467636 5 months ago 2.12GB
ghcr.io/immich-app/immich-machine-learning v1.132.3 8e7cf63a8810 5 months ago 927MB
ghcr.io/open-webui/open-webui ollama efff07362107 11 months ago 6.21GB
ghcr.io/immich-app/immich-server <none> cdd03c8cffdd 13 months ago 2.05GB
ghcr.io/immich-app/immich-machine-learning <none> 37cf1a5c9e11 13 months ago 799MB
redis <none> 36c1d3cfe18f 16 months ago 30.1MB
tensorchord/pgvecto-rs <none> 2e2cb40c55b8 20 months ago 676MB
jellyfin/jellyfin latest 544d674913bc 22 months ago 979MB
portainer/agent 2.19.0 49398db4ff8d 2 years ago 212MB

nicer output
sorry for mismach text
From portainer:

from one year old immich version i update to last version , so i get error : "Migrations failed: Error: Invalid upgrade path"
In link is suggested to go to : "then perform an intermediate upgrade to v1.132.3 first."
Link where i get info: https://docs.immich.app/errors/#typeorm-upgrade
... so i did it
i will in future when i will fix this issue , i promise
for example yours is v1.114.0
try incrementaly upgrade to v1.119.1 for example, see if it works
hang on with the suggestions @mandhol212
I'd much rather see your compose first @sakal.sk
root@nasko:/home/docker/Immich# cat .env
You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables
The location where your uploaded files are stored
UPLOAD_LOCATION=/mnt/8TB1/Fotky/library
The location where your database files are stored
DB_DATA_LOCATION=/mnt/8TB1/Fotky/db
To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
TZ=Etc/UTC
The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=v1.132.3
Connection secret for postgres. You should change it to a random password
Please use only the characters
A-Za-z0-9
, without special characters or spaces
DB_PASSWORD=postgresSAKAL123
The values below this line do not need to be changed
###################################################################################
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
root@nasko:/home/docker/Immich#Right, so you can see that's the compose for 136 and later, not 132
Just go for
v1.136.0
first see what that doessorry maybe stupid question for you but i need to ask:
Should i just in .env file change version and do : docker compose pull && docker compose up -d
OR
I need to find somewhere old docker compose file specific for version v1.136.0 , with ,env file and than after i find it and put to my server do : docker compose pull && docker compose up -d
?
?
In this case, just changing the version in the env is fine
❤️ thx
It all depends btw, but in this case that is what you should do 😛
done, and now:
docker compose pull && docker compose up -d



Containers sure, but what about the images? 🙂

I meant your immich GUI images 😛
hahah oki 😉
your jellyfin is super outdated too btw, all these features you're missing out on

next step 😉
You need to because the next release will require you to have updated to current release 😄
From 1.136.0 you can go straight to
release
aaaah jelly is now OLD becouse is not running there anymore. i move it to anyther server for better transcoding
should i now change to release in .env and than again : docker compose pull && docker compose up -d
?
yep
You already have the latest image ready so that should be quick
Did you blur those images yourself btw or are the thumbs missing?
i have nothing to hide from you, couse you help me and i realy grateful for that.
It is blured , i think thumbs are missing
dono why
before update , today at 9:00 , 3 hours ago was thumbs there 😉

you was right , it take 1 sec to deply

starting...
Alright so the container is probably ok but still, need to check those images
docker compose logs
perhaps?it is restarting


secound picture is from BASH command: docker compose logs
no worries
Could you change
in your compose to
and just to be sure do
ls -la /mnt/8TB1/Fotky/library
see what's there
mmm no backups folder yet, let's see what happens
ok i did : ${UPLOAD_LOCATION}:/usr/src/app/upload
now : docker compose down
and after: docker compose pull && docker compose up -d
right?
yep
well in this case
docker compose up -d
was enough but it doesn't hurtoooh yep
you right
pull is for when you change the images or want to check for new versions
thx

thats DONE
docker logs again pleas

Alright
I'm almost positively sure this is because your version is older than those file checks so it just never made them 😛
docker exec immich_server ls -la /usr/src/app/upload

it is restarting 🙁
ahhh
we can check on the host
ls -la /mnt/8TB1/Fotky/library/encoded-video

yep, just doesn't have the .immich file
ok now
mkdir /mnt/8TB1/Fotky/library/backups
as root is it OK ?
yes
done

next up
find /mnt/8TB1/Fotky/library -type d -exec touch {}/.immich \;
ownage man , you roll
i realy thx you
What does the container do now? 🙂
very nice and clear support.

i am sitll wainting to finish find
oh god
I made a mistake ;_;
It's nothing bad but it will take a while
could you ctrl - c the command
ok i did
let's check the files
ls -la /mnt/8TB1/Fotky/library/*/
hopefully there's an .immich in every directory there
The mistake was find is probably recursive here so it also went for the subdirectories. Nothing bad but just a bunch of unneccesary files
yeah lol
let's just do it manually to prevent mistakes
oki 😉
er
There we go
done
all touch done


Containers>immich_server>Logs
looks better now 😉
GUI showing the images now?

wau man , nice to see you , thats me 😉

all looks gr/
gr8
As a last step you can switch this back
it should be for the future: - ${UPLOAD_LOCATION}:/data
right?
yes
ok now very important question: When do you visit SLOVAKIA so we will dring on me till we die 😉
?
and PLAY CS2 😉
but i prefer CSGO Danger Zone 😉
Haha I'm afraid if I drank all the beer that was offered through support I'd be in a coma 😄
Thank you for the gratitude though!
no no no, i thank you man
where i can send donation?
I don't personally accept donations but feel free to buy a user or server license for immich if you haven't already
I understand, but I really appreciate your time spent solving my problem. The offer is valid and if you ever visit Slovakia I would be very happy to be your host. Also, the offer to play CSGO DZ still applies 😉
Haven't looked into loading CSGO after updating to CS2 😛
super easy
i can help you with that anytime
Sandwich TV
YouTube
All the steps you need to play Danger Zone Again!
Danger Zone server 1: 169.150.245.98:27510
Danger Zone server 2: 169.150.245.98:27230
Discord server for this DZ server: https://discord.gg/5a2nqY8t9u
I know I made a lot of these videos, but stuff changes. I wanted to have ONE source of truth that hopefully won't expire for a while.
This thread has been closed. To re-open, use the button below.