boredazfcuk / docker-icloudpd

An Alpine Linux container for the iCloud Photos Downloader command line utility
1.58k stars 149 forks source link

Changing folder destination #522

Closed kevinbeared closed 2 months ago

kevinbeared commented 3 months ago

Everything's works perfectly, except it was late, i set up the /icloud download folder inside the container.... Can I change this ? Do I copy/paste the content of the old folder to the new one, so that it doesn't have to download everything again ? Will the script scan everything ?

Also, when the container is restarted, do we need to run each time the initializer ? Unclear for me.

Thanks !

boredazfcuk commented 3 months ago

If you have mounted the directory inside the container, say to /downloads, but forgot to actually configure a download path variable and they've gone to /home/user/iCloud or whatever, just move/copy the contents to the /download directory.

If you haven't configured the container to have a mounted volume, when you do, it will delete, the recreate the container and the photos will be lost during that process.

kevinbeared commented 3 months ago

Ok thanks I started from scratch.

I had a "user" variable environment with the name of my user so that the container can access the folder outside the container. Ran into an error during the initializing as the user cannot access /bin/sh.... tried root but forbidden.

boredazfcuk commented 3 months ago

The "user" variable is just to make things prettier. You can leave it as "user" and it shouldn't make a difference. You just need to make sure the user_id number matches the user_id that owns the destination directory on the host machine.

The script should automatically run as root and swap to the configured user, only when it needs to. This is because it uses things like nslookup and traceroute to test stuff before it runs. That way it can fail gracefully if something isn't right and give people a better clue as to what went wrong.

kevinbeared commented 3 months ago

Ok last thing before I stop. I change folder and add an environement variable with the correct user_id but I get an error "user already existing. Exiting"

boredazfcuk commented 3 months ago

What user ID are you using? Sounds like you've picked one that already exists (i.e. a system account). Try to use 1000-65535

kevinbeared commented 3 months ago

After succeeding to check if the .mounted files is here, so permissions seems ok I get :

Invalide value for ‘-d’  / ‘—directory »: Path ‘/iCloud’ is not readable

boredazfcuk commented 3 months ago

This is usually because the path is mounted to an SMB share or something along those lines. It's possible to configure the docker volume mounts so that it knows they are shared, I don't remember how and my laptop's out of action right now, so I can't check.