ipsingh06 / seedsync

Sync your seedbox. Fast. And more.
https://ipsingh06.github.io/seedsync/
Apache License 2.0
307 stars 42 forks source link

seedsync on DS920+ #115

Open meristos opened 2 years ago

meristos commented 2 years ago

Hello, I am totally new to the linux environment and I have just bought a NAS for my storage needs.

I installed seedsync with Docker. Everything works very well as long as I don't try to specify a particular directory for "config" and "downloads" during the installation. The connection with the seedbox and the synchronization starts. My disk space is decreasing on the NAS, a sign that the download is going well. However, unable to access the "downloads" directory. It does not appear in filestation but it does exist because it is impossible to create a "downloads" directory at the root because a "folder already exists" error is displayed.

When I try to specify a location for "downloads" and "config" during installation seedsync does not start.

Can you help me please?

MonstersInc-sudo commented 2 years ago

Might help, I had the same issue. https://github.com/ipsingh06/seedsync/issues/113

cypekis11 commented 2 years ago

Hi,

I will copy my post, since the #113 is closed:

Hi,

I also have ds920+ and cannot install seedsync with docker.

Installing with scheduler result with:

IMG_20220504_162553

Installing with existing docker register package does install and work, but won't access the downloads and config folders. It manages to connect and even starts mirroring, but the files won't appear in any visible volume1 folder. Like as if it installs somewhere in root, which is not accessible.

Changing the Mount Path to 'downloads' results with crashing container - it won't start anymore.

Seems the issue is not only by me. https://github.com/ipsingh06/seedsync/issues/86

Any solution?

quadcom commented 2 years ago
  1. Delete any Seedsync images/containers that are stored on your system.
  2. SSH into your DSM
  3. Get your UID and GID (#id -u 'your user name', #id -g 'your user name')
  4. Edit this code in notepad with the correct folder mapping (path-on-system:internal-mount-dir). And correct UID:GID. Make sure the user account on the DSM has full access to the DIRs you are mapping into the Docker container.
/* Start Seedsync Container */
docker pull ipsingh06/seedsync
sudo docker run --name SeedSync -p 8802:8800 -v /volume3/Sync/Seedbox/z-config:/config -v /volume3/Sync/Seedbox/1-Incoming:/incoming --user 1039:65539 ipsingh06/seedsync:latest

This will pull the lastest Seedsync image and spin up a container.

The DSM Docker UI is flakey and most often does not start containers properly. It's not just a Seedsync thing, it's many images/containers. DSM has some weird issues with permissions that makes working with Docker containers harder then it needs to be.

In the event that Seedsync is updated simply delete the container and image from the DSM Docker UI. SSH into DSM and paste the edited code above. That will re-download the image and spin up a new container with all your previous settings intact. Keep that code in a safe place.

quadcom commented 2 years ago

I should have started with a request for you to publish your container settings as well as your SS config screen. But the above should get you up and running as long as you edit the script correctly with your specifics.

cypekis11 commented 2 years ago

Man thanks a lot, worked like a charm!

However needed to change 'incoming' to 'downloads', since it didn't run...

  1. Delete any Seedsync images/containers that are stored on your system.
  2. SSH into your DSM
  3. Get your UID and GID (#id -u 'your user name', #id -g 'your user name')
  4. Edit this code in notepad with the correct folder mapping (path-on-system:internal-mount-dir). And correct UID:GID. Make sure the user account on the DSM has full access to the DIRs you are mapping into the Docker container.
/* Start Seedsync Container */
docker pull ipsingh06/seedsync
sudo docker run --name SeedSync -p 8802:8800 -v /volume3/Sync/Seedbox/z-config:/config -v /volume3/Sync/Seedbox/1-Incoming:/incoming --user 1039:65539 ipsingh06/seedsync:latest

This will pull the lastest Seedsync image and spin up a container.

The DSM Docker UI is flakey and most often does not start containers properly. It's not just a Seedsync thing, it's many images/containers. DSM has some weird issues with permissions that makes working with Docker containers harder then it needs to be.

In the event that Seedsync is updated simply delete the container and image from the DSM Docker UI. SSH into DSM and paste the edited code above. That will re-download the image and spin up a new container with all your previous settings intact. Keep that code in a safe place.

quadcom commented 2 years ago

So the folder mappings in Docker can be tricky. Even more so in Synology's version of Docker. In truth, both sides of the declaration are variable. They can be whatever you want but they do have to match real-world directories.

The right side is what the file structure looks like inside of the container. This is what you configure inside of Seedsync. The left side is the directory as it's found on the Synology NAS. Notice that the volume name was included as the system needs to know all the way from the root device.

That you had to change incoming to downloads does not surprise me at all because that's how you have/want your directories to be named.

Does that make sense?

cypekis11 commented 2 years ago

Yeah, that makes sense. And the incoming folder was accessible so the permissions worked.

However I suppose the naming of the local mount in settings is somehow forced by the container/creator, that's why it needs to be named 'downloads'. Otherwise the seedsync will not listen the remote directory.

quadcom commented 2 years ago

It's not hardcoded, it is what you define inside of the SS config page. You can name that mount point whatever you want as long as it's defined the same in SS config.