#Immich in docker-desktop on Windows 10 and using NAS

1 messages · Page 1 of 1 (latest)

uncut helm
#

Hi, I really didn't want to create a post here, as I felt it was the last resort. I consulted with ChatGPT for over an hour and a half and I'm not getting anywhere. I thought this setup would be more common, but FAQ, nor these topics suggest that (maybe it's so obvious and I'm just stupid enough to realise 🙂 )

Anyway. My setup is as follows:

  • Windows 10 Pro latptop running all sorts of shenanigans. Decided I wanted to take Immich for a spin.
  • Installed docker-desktop
  • Grabbed the .env and the docker-compose.yml files
  • Wanted to keep it simple. Created a folder at C:\Immich and pasted the files there
  • Updated the DB_PASSWORD and the TZ and everything workes up until this point
  • Now I want to upload my photos to a NAS I have - and problems start
  • NAS is mounted as a network drive to the Windows machine as an M:\ drive (UNC is \10.13.2.3\Ares)
  • Created a folder called at M:\Immich
  • Tried a lot if different approaches with AI.
    Like: UPLOAD_LOCATION=//10.13.2.3/Ares/Immich/ (thought for sure that one would work)

The error I keep seeing in the logs is:
ERROR [Microservices:StorageService] Failed to read upload/encoded-video/.immich: Error: ENOENT: no such file or directory, open 'upload/encoded-video/.immich'

It seems like a permission issue and I'm really lost as to what on Earth am I supposed to do.

I'm not trying to do the external library. I don't have any photos on the NAS, yet, so I want a clean, fresh install, where I want to start uploading the files to the NAS. The database and whatnot can stay on the windows machine.

Any help is SO oh so appreciated. Thanks.

karmic daggerBOT
#

:wave: Hey @uncut helm,

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

#

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. :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.

uncut helm
#

As it currently stands, this is after me tinkering with it with the help of AI. I'm more than happy to scrape this and start from scratch.

steady kestrel
#

You have to handle mounting the nas on the host and passing the drive through to docker

#

None of this //ip/share stuff will work

#

If the M: drive isnt appearing in docker this is probably an issue with docker not passing it through

#

Also, if you change any paths, you need to move the old files to the new location. It seems like you did not do that, the cause of the missing file errors

uncut helm
#

Ok, I tried a fresh install just to set myself back to a baseline.
The app loads no problem and the directory is created under C:\Immich\library.

You are correct by saing I did not move the structure to the NAS. My understanding was that it will get re-created in the new location.
If that's not the case, I can move the library under M:\Immich after shutting down the container.

#

The thing that you pretty much nailed on the head is docker not passing the M:\ drive through.
I'm trying my best to achieve that, but it's my very first time working with Docker and all of this is really new stuff for me.

#

AI suggested running
docker run -it --mount type=bind,source=Z:/,target=/mnt/data myapp

Replacing Z:/ with my M:/.
But this app argument at the end is completely lost on me.

Could you push me into the correct direction on how can I pass the frive through so that Docker is able to reach it?

swift wadi
#

And regarding the error from your initial post, the folder structure has hidden and empty .immich files that are used to determine that the folders all exist. So on your NAS at the M:\Immich\library location make sure that the necessary folders exist and have the .immich files

uncut helm
#

Right. So like you suggested, I took the folder structure, including the .immich files inside and moved it over to my NAS at M:\Immich\ resulting in the same format you suggested M:\Immich\library

I then made the ONLY change to the .env file and that was the UPLOAD LOCATION from the original to UPLOAD_LOCATION=M:\Immich\library

#

No changes to the LOG, however. I still keep seeing the same error.

ERROR [Microservices:StorageService] Failed to read upload/encoded-video/.immich: Error: ENOENT: no such file or directory, open 'upload/encoded-video/.immich'

#

I'm really out of my comfort zone here, but coming back to what the AI suggested, can't we be looking at a scenario, where the Docker containers simply have no idea what M:\ drive is, since it's mounted only to Windows?

uncut helm
uncut helm
#

And yet, after looking into a lot of other sources, it seems that by using WSL 2, Docker should be able to access the Windows file system by default.

I can feel that whatever results in fixing this will be so ... simple and dumb.

uncut helm
#

Right. I'm getting nowhere, it seems.

I copied the library structure again into the NAS and verified all .immich files are there and have some numbers inside.

The one thing I don't seem to understand is that in the LOG this message suggests it sees all of the folders:
[Nest] 7 - 12/04/2024, 8:36:28 AM LOG [Microservices:StorageService] Verifying system mount folder checks, current state: {"mountChecks":{"thumbs":true,"upload":true,"backups":true,"library":true,"profile":true,"encoded-video":true}}

#

But the following one says it cannot read the .immich file(s)
[Nest] 7 - 12/04/2024, 8:36:28 AM ERROR [Microservices:StorageService] Failed to read upload/encoded-video/.immich: Error: ENOENT: no such file or directory, open 'upload/encoded-video/.immich'

#

so I really am ... stuck.

uncut helm