I
Immich4d ago
kroovy

Migration from /usr/src/app to /data broke something

I've been running immich on Unraid using docker-compose for a while now with no issues. I recently discovered custom locations and wanted to try it out to store some files on my cache drive. The instructions for custom locations was using /data paths but I was using /usr/src/app. I got the custom location working but now I wanted to try migrating to start using /data. This is on 1.138.1 This led me to a github thread where it was suggested to use immich-admin change-media-location to change your paths. So I did this, updated my compose file to use /data, and now immich wont boot. I get these errors:
[Nest] 7 - 08/20/2025, 6:30:43 PM LOG [Microservices:StorageService] Successfully verified system mount folder checks
[Nest] 7 - 08/20/2025, 6:30:43 PM LOG [Microservices:StorageService] Media location changed (from=/usr/src/app/upload, to=/data)
Error: Detected an inconsistent media location. For more information, see https://immich.app/errors#inconsistent-media-location
at /usr/src/app/server/dist/services/storage.service.js:96:31
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async /usr/src/app/server/dist/repositories/database.repository.js:379:27
at async /usr/src/app/server/node_modules/kysely/dist/cjs/kysely.js:535:20
at async DefaultConnectionProvider.provideConnection (/usr/src/app/server/node_modules/kysely/dist/cjs/driver/default-connection-provider.js:12:20)
at async
[Nest] 7 - 08/20/2025, 6:30:43 PM LOG [Microservices:StorageService] Successfully verified system mount folder checks
[Nest] 7 - 08/20/2025, 6:30:43 PM LOG [Microservices:StorageService] Media location changed (from=/usr/src/app/upload, to=/data)
Error: Detected an inconsistent media location. For more information, see https://immich.app/errors#inconsistent-media-location
at /usr/src/app/server/dist/services/storage.service.js:96:31
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async /usr/src/app/server/dist/repositories/database.repository.js:379:27
at async /usr/src/app/server/node_modules/kysely/dist/cjs/kysely.js:535:20
at async DefaultConnectionProvider.provideConnection (/usr/src/app/server/node_modules/kysely/dist/cjs/driver/default-connection-provider.js:12:20)
at async
I reverted my compose file to /usr/src/app, and immich boots, but it wont load images. I can see when I look at info on a picture my files are expected in /data/library Any suggestions on how to fix it to stick with /data? My next step would be to revert back to /usr/src/app on change-media-location but I wanted to see how I can move forward instead.
5 Replies
Immich
Immich4d ago
:wave: Hey @kroovy, 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.
kroovy
kroovyOP4d ago
Env File:
# 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/user/images/immich
THUMB_LOCATION=/mnt/cache/appdata/immich/thumbs
# The location where your database files are stored
DB_DATA_LOCATION=/mnt/cache/appdata/postgres

# 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=release

# 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=postgres

# The values below this line do not need to be changed
###################################################################################
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
# 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/user/images/immich
THUMB_LOCATION=/mnt/cache/appdata/immich/thumbs
# The location where your database files are stored
DB_DATA_LOCATION=/mnt/cache/appdata/postgres

# 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=release

# 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=postgres

# The values below this line do not need to be changed
###################################################################################
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
Compose file (relevant section since I hit char limit)
volumes:
# Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- ${THUMB_LOCATION}:/usr/src/app/upload/thumbs
- /etc/localtime:/etc/localtime:ro
volumes:
# Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- ${THUMB_LOCATION}:/usr/src/app/upload/thumbs
- /etc/localtime:/etc/localtime:ro
Compose file when I try using /data which causes errors
volumes:
# Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
- ${UPLOAD_LOCATION}:/data
- ${THUMB_LOCATION}:/data/thumbs
- /etc/localtime:/etc/localtime:ro
volumes:
# Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
- ${UPLOAD_LOCATION}:/data
- ${THUMB_LOCATION}:/data/thumbs
- /etc/localtime:/etc/localtime:ro
Immich
Immich4d ago
Successfully submitted, a tag has been added to inform contributors. :white_check_mark:
kroovy
kroovyOP4d ago
Also the help page for the error mentions IMMICH_MEDIA_LOCATION but I do not have this configured anywhere. https://immich.app/errors/#inconsistent-media-location I went ahead and did the change-media-location back to /usr/src/app/upload, restarted, everything was working, then changed my compose file to use the /data dirs, and now it seems to work. Not sure what happened the first time I did that
Immich
Immich4d ago
This thread has been closed. To re-open, use the button below.

Did you find this page helpful?