Failed to read (/data/encoded-video/.immich): Error: ENOENT: no such file or directory, open '/data/
Windows running WSL and Docker Desktop
I have tried deleting images then re-installing Docker
You can find documentation for all the supported env variables at https://docs.immich.app/install/environment-variables
The location where your uploaded files are stored
UPLOAD_LOCATION=./library
The location where your database files are stored. Network shares are not supported for the database
DB_DATA_LOCATION=./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 "v2.1.0"
IMMICH_VERSION=v2
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

46 Replies
:wave: Hey @Chaos6,
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.WARNING: To install Immich, follow our guide: https://docs.immich.app/install/docker-compose
Make sure to use the docker-compose.yml of the current release:
https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
The compose file on main may not be compatible with the latest release.
name: immich
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
# extends:
# file: hwaccel.transcoding.yml
# service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
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}=D:\immich\Pics
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
ports:
- '2283:3001'
depends_on:
- redis
- database
restart: always
healthcheck:
disable: false
immich-machine-learning:
container_name: immich_machine_learning
# For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag.
# Example tag: ${IMMICH_VERSION:-release}-cuda
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
# extends: # uncomment this section for hardware acceleration - see https://docs.immich.app/features/ml-hardware-acceleration
# file: hwaccel.ml.yml
# service: cpu # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the
-wsl version for WSL2 where applicable
volumes:
- model-cache:/cache
env_file:
- .env
restart: always
healthcheck:
disable: false
redis:
container_name: immich_redis
image: docker.io/valkey/valkey:8@sha256:81db6d39e1bba3b3ff32bd3a1b19a6d69690f94a3954ec131277b9a26b95b3aa
healthcheck:
test: redis-cli ping || exit 1
restart: always
database:
container_name: immich_postgres
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
POSTGRES_INITDB_ARGS: '--data-checksums'
# Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs
# DB_STORAGE_TYPE: 'HDD'
volumes:
# Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
shm_size: 128mb
restart: always
volumes:
model-cache:Successfully submitted, a tag has been added to inform contributors. :white_check_mark:
${UPLOAD_LOCATION}=D:\immich\Pics this is plain wrong
Well, it is wrong to put it in your compose at leastAlso don't run postgres in windows. See: https://docs.immich.app/install/requirements/#special-requirements-for-windows-users
I am on windows trying to use the D drive
@schuhbacca once i swapped from postgres to the requirements you mentioned the app stopped working
I used DB_DATA_LOCATION=pgdata
and pgdata:
That doesn't match the compose you pasted at all
and i am unable to connect on local PC
You're supposed to backup and restore to it, not just swap it out while it's running
But also your mount is just wrong so I don't really see how it even worked in the first place
once it stopped working i switched back to what it automaticall comes with as i assume it was working fine before with postgres
with this compose none of the images will end up in your folder, only in your docker image
which will be wiped the second you update
understood
How should be properly set for D drive
I ran docker compose up in this location
How old is your install? That server port mapping is from over a year ago
v2
i just installed today
Did you use any LLM in troubleshooting?
Anyway use the default compose from the releases page https://github.com/immich-app/immich/releases/download/v2.2.2/docker-compose.yml
Apply changes for the pgdata volume
in your env:
That should do it

this look correct?
No, I said stock compose
and you went and changed it
apologies i have ffixed it and it is running.. setting it up this way I am now unable to connect with the app...
I have firewall disabled as allowing 2283 in and out rules along with allowing docker app in firewall wasnt working
yes phone is connected to same wifi netork
using http://192.169.0.178:2283
I also set WSL netsh interface portproxy add v4tov4 listenport=2283 listenaddress=0.0.0.0 connectport=2283 connectaddress=192.168.0.178
I'm pretty sure you don't have to do that
But as with things Windows
When in doubt, reboot :dogekek:
true lol
thanks for helping me
ill be back lol
ApiException 400: HTTP connection failed: GET /server/ping (Inner exception: ClientException: Connection closed before full header was received, uri=http://192.168.0.178:2283/api/server/ping)
#0 IOClient.send (package:http/src/io_client.dart:229)
<asynchronous suspension>
#1 BaseClient._sendUnstreamed (package:http/src/base_client.dart:93)
<asynchronous suspension>
#2 ApiClient.invokeAPI (package:openapi/api_client.dart:101)
<asynchronous suspension>
#3 ServerApi.pingServer (package:openapi/api/server_api.dart:595)
<asynchronous suspension>
#4 Future.timeout.<anonymous closure> (dart:async/future_impl.dart:1061)
<asynchronous suspension>
#5 ApiService._isEndpointAvailable (package:immich_mobile/services/api.service.dart:124)
<asynchronous suspension>
#6 ApiService.resolveEndpoint (package:immich_mobile/services/api.service.dart:109)
<asynchronous suspension>
#7 ApiService.resolveAndSetEndpoint (package:immich_mobile/services/api.service.dart:85)
<asynchronous suspension>
#8 AuthService.validateServerUrl (package:immich_mobile/services/auth.service.dart:59)
<asynchronous suspension>
#9 LoginForm.build.getServerAuthSettings (package:immich_mobile/widgets/forms/login/login_form.dart:99)
<asynchronous suspension>

You can find documentation for all the supported env variables at https://docs.immich.app/install/environment-variables
The location where your uploaded files are stored
UPLOAD_LOCATION=/d/immich/Pics
The location where your database files are stored. Network shares are not supported for the database
DB_DATA_LOCATION=pgdata
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 "v2.1.0"
IMMICH_VERSION=v2
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
name: immich
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
# extends:
# file: hwaccel.transcoding.yml
# service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
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
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
ports:
- '2283:2283'
depends_on:
- redis
- database
restart: always
healthcheck:
disable: false
immich-machine-learning:
container_name: immich_machine_learning
# For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag.
# Example tag: ${IMMICH_VERSION:-release}-cuda
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
# extends: # uncomment this section for hardware acceleration - see https://docs.immich.app/features/ml-hardware-acceleration
# file: hwaccel.ml.yml
# service: cpu # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the -wsl version for WSL2 where applicable
volumes:
- model-cache:/cache
env_file:
- .env
restart: always
healthcheck:
disable: false
redis:
container_name: immich_redis
image: docker.io/valkey/valkey:8@sha256:81db6d39e1bba3b3ff32bd3a1b19a6d69690f94a3954ec131277b9a26b95b3aa
healthcheck:
test: redis-cli ping || exit 1
restart: always
database:
container_name: immich_postgres
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
POSTGRES_INITDB_ARGS: '--data-checksums'
# Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs
# DB_STORAGE_TYPE: 'HDD'
volumes:
# Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
shm_size: 128mb
restart: always
volumes:
model-cache:

so its like Localhost is a different IP
Yeah it's getting stuck in the firewall somewhere
crazy because its off and PC has been restarted




the port is 2283, not 2238 :)
:KEKW:
still not working.. I even fixed the port number then re-enabled the FireWall.... It failed so I disabled the FW and still not connecting
Is there a different IP becuse if I use my host PC and type in http://192.168.0.178:2283/ it wont connect either ONLY http://localhost:2283
Do i need host networking in docker selected?

Your guess is as good as mine 😛
D:\immich2>docker compose up -d
service "database" refers to undefined volume pgdata: invalid compose project
tried to create new and that pgdata that was changed instead of ./postgres it wont let me create....
You made a typo or forgot to put it at the bottom

in the compose
you tald me not to touch it

told
I said:
stock compose + changes for pgdata volume
nothing else
ok
sorry
anyway it's nearing 1 am so I'm going to skedaddle
thanks so much
best of luck