ELI5 - Library path and External Path
I cannot seem to get the right path name to add an smb share folder for adding an external folder on my mac. Anyone able to help tell me what I'm doing wrong ? I've updated the yml file/admin path as well. Maybe I'm not linking the path correctly ?
1 . For the external path, I tried using smb://Tower._smb._tcp.local/Server/Photos, as well as /Volumes/Server/Photos and /Tower._smb._tcp.local/Server/Photos. Each time I updated the .yml file along with the admin path. What am I doing wrong here ?
2. I'd also like to set up the folder where uploaded files are saved from new files from the app to my smb share instead of locally.
I'm using my NAS as cold storage only so just need a little help with directing these two things to the share as I have docker installed on my Mac running the container.
Thank you !
45 Replies
Can you post your setup, with that context, it will be easier to help you! Thank you
Otherwise my setup is docker compose on an M1 Mac. I want to add external path of photos from an Unraid SMB share that is mounted on my Mac. Also want to point the library folder for originals to the unraid SMB so that originals uploaded from my phone are stored there instead of locally on the Mac.
You're misunderstanding the external path setting. That should be the path inside the container that you've mounted your files to
Sorry I’m not sure I fully understand, I followed the documentation from https://documentation.immich.app/docs/features/libraries
Libraries | Immich
Overview


Perhaps you mean mount it to docker first ? docker run -v /path/on/host:/path/in/container my_image
Yes, and then in immich settings you use the path in the container
Is this the correct command ?
docker run -v smb://Tower._smb._tcp.local/Server/Photos:/Users/nicholasmansley/immich-app/immich-data/library immich-app
Docker is a steep learning curve, thank you for your help so far
Hmm are you running all in one image instead of docker-compose method?
I am using docker compose
This is my setup… just trying to set up an external library from my SMB share.
I don't think docker can mount a network share like that. You need to mount it to the system separately first
It is mounted to the system already
Ah sorry about that
That’s copied directly from the mount path
Can you run lsblk command in the terminal
Sure one second
I’m running a Mac so this would be diskutil list command
However that does not show network shares mounted usually , instead the mount command does
I think it will have to be something like
/Volumes/...
/Volumes/Server/Photos
So yeah, please use that path
so
/Volumes/Server/Photos:/mnt/library:ro
is the volume that you will need to mount
then in the Immich instance the /mnt/library
is the path that Immich's containers have accessWill I have to mount this in docker first though ?
Prior to configuring the immich yml
No
Ok perfect
when you specify that volume path, upoing bringing up the stack with
docker-compose up
it will mount them in the containers
looks good!I will try !
Do I need to restart the container after I make changes to the yml file or does it update on the fly ?
You will have to bring them down then up to register the changes


Rebooted Docker, added these paths. Doesn't seem to be working. Are the paths correct in the Immich settings ?
Can you post your docker-compose again?
Reboot and docker-compose up are different things as only docker-compose up detects changes in the yaml-file
Can you start a shell inside the server and microservices containers and check that they can see the mounted disk?
This is on a Mac
Still applies. The container must be able to see the files, otherwise it won't work
Alright, I have no idea how to start a shell inside of either container. I have been racking my brain here with such a simple task of directing an SMB share to a container. The docker learning curve is no joke.
I even tried installing portainer in hopes it would make my life easier. I still cannot figure it out. YouTube Reddit, maybe I’m just not cut out for running command line lol.
How To Run Bash In Docker - Interactive or 1 Command
Learn how to start an interactive Bash shell and how to execute standalone shell commands in a running Docker container.
I'm on my phone now but you docker exec a shell
I see I can shell into through portainer, can also setup a volume through portainer directly to docker
Portioner saved the day ! Thank you for your help everyone !


Even was able to move my upload folder to the server ! The trick that worked for the library was using bind instead of volume
Perfect! Could you share your docker-compose?
I did nothing from docker compose yml , it’s all done from portainer which would have been web gui to cli commands. What do you mean by share my docker compose ?
I've never used portainer but was curious to know how the volume configuration looked like in the config file in the end
This is literally it
I’d suggest running portainer
Sorry this here

This was crucial knowing it was /volume instead of how Mac sees it with the link SMB:// so thanks for pointing me in that direction.