mirror of
https://github.com/9001/copyparty.git
synced 2025-08-17 00:52:16 -06:00
add synology howto
This commit is contained in:
parent
5cedd22bbd
commit
21f9304235
|
@ -140,6 +140,7 @@ just run **[copyparty-sfx.py](https://github.com/9001/copyparty/releases/latest/
|
||||||
* or if you cannot install python, you can use [copyparty.exe](#copypartyexe) instead
|
* or if you cannot install python, you can use [copyparty.exe](#copypartyexe) instead
|
||||||
* or install [on arch](#arch-package) ╱ [on NixOS](#nixos-module) ╱ [through nix](#nix-package)
|
* or install [on arch](#arch-package) ╱ [on NixOS](#nixos-module) ╱ [through nix](#nix-package)
|
||||||
* or if you are on android, [install copyparty in termux](#install-on-android)
|
* or if you are on android, [install copyparty in termux](#install-on-android)
|
||||||
|
* or maybe you have a [synology nas / dsm](./docs/synology-dsm.md)
|
||||||
* or if your computer is messed up and nothing else works, [try the pyz](#zipapp)
|
* or if your computer is messed up and nothing else works, [try the pyz](#zipapp)
|
||||||
* or if you prefer to [use docker](./scripts/docker/) 🐋 you can do that too
|
* or if you prefer to [use docker](./scripts/docker/) 🐋 you can do that too
|
||||||
* docker has all deps built-in, so skip this step:
|
* docker has all deps built-in, so skip this step:
|
||||||
|
|
|
@ -25,6 +25,9 @@
|
||||||
## [`changelog.md`](changelog.md)
|
## [`changelog.md`](changelog.md)
|
||||||
* occasionally grabbed from github release notes
|
* occasionally grabbed from github release notes
|
||||||
|
|
||||||
|
## [`synology-dsm.md`](synology-dsm.md)
|
||||||
|
* running copyparty on a synology nas
|
||||||
|
|
||||||
## [`devnotes.md`](devnotes.md)
|
## [`devnotes.md`](devnotes.md)
|
||||||
* technical stuff
|
* technical stuff
|
||||||
|
|
||||||
|
|
140
docs/synology-dsm.md
Normal file
140
docs/synology-dsm.md
Normal file
|
@ -0,0 +1,140 @@
|
||||||
|
# running copyparty on synology dsm nas
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
this has been tested on a `Synology ds218+` NAS with 1 SHR storage-pool and 1 volume, but the same steps should work in more advanced setups too
|
||||||
|
|
||||||
|
verified on DSM 7.1 and 7.2, but not on 6.x since my flea-market ds218+ refuses to install it for some reason
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# ok let's go
|
||||||
|
|
||||||
|
go to controlpanel -> shared-folders, and create the following shared-folders if you don't already have appropriate ones:
|
||||||
|
|
||||||
|
* a shared-folder for configuration files, preferably on SSD if you have one
|
||||||
|
|
||||||
|
* one or more shared-folders for your actual data/media to share
|
||||||
|
|
||||||
|
(btw, when you create the shared-folders, it asks whether you want to enable data checksum and file compression, i would recommend both)
|
||||||
|
|
||||||
|
the rest of this doc assumes that these two shared-folders are named `configs` and `media1`, and that you made an empty folder inside the `configs` shared-folder named `cpp`
|
||||||
|
|
||||||
|
* your copyparty config file (see below) should be named `something.conf` directly inside that cpp folder, for example `/configs/cpp/copyparty.conf`
|
||||||
|
|
||||||
|
* during first start, copyparty will create a folder there named `copyparty`, in other words `/configs/cpp/copyparty` which you should leave alone; that's where copyparty stores its indexes and other runtime config
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## recommended copyparty config
|
||||||
|
|
||||||
|
open the Package Center and install `Text Editor` (by Synology Inc.) to create and edit your copyparty config:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
* note the `copyparty` and `hist` folders in that screenshot which are autogenerated by copyparty and to be left alone
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
[global]
|
||||||
|
e2d, e2t # remember uploads & read media tags
|
||||||
|
rss, daw, ver # some other nice-to-have features
|
||||||
|
#dedup # you may want this, or maybe not
|
||||||
|
hist: /cfg/hist # don't pollute the shared-folder
|
||||||
|
name: synology # shows in the browser, can be anything
|
||||||
|
|
||||||
|
[accounts]
|
||||||
|
ed: wark # username ed, password wark
|
||||||
|
|
||||||
|
[/] # share the following at the webroot:
|
||||||
|
/w # the "/w" docker-volume (the shared-folder)
|
||||||
|
accs:
|
||||||
|
A: ed # give Admin to username ed
|
||||||
|
|
||||||
|
# hide the synology system files by creating a hidden volume
|
||||||
|
[/@eaDir]
|
||||||
|
/w/@eaDir
|
||||||
|
```
|
||||||
|
|
||||||
|
if you ever change the copyparty config file, then [restart the container](https://ocv.me/copyparty/doc/pics/dsm71-02.png) to make the changes take effect
|
||||||
|
|
||||||
|
okay now continue with one of these:
|
||||||
|
|
||||||
|
* [DSM v7.2 or newer](#dsm-v72-or-newer)
|
||||||
|
|
||||||
|
* [all older DSM versions](#dsm-v6x-dsm-v71x-or-older)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# DSM v7.2 or newer
|
||||||
|
|
||||||
|
`Docker` was replaced by `Container Manager` in DSM v7.2 but they're almost the same thing;
|
||||||
|
|
||||||
|
* open the `Package Center` and install the [Container Manager package](https://ocv.me/copyparty/doc/pics/dsm72-01.png) by `Docker Inc.`
|
||||||
|
* open the `Container Manager` app
|
||||||
|
* go to the `Registry` tab and search for `copyparty`
|
||||||
|
* [doubleclick copyparty/ac](https://ocv.me/copyparty/doc/pics/dsm72-02.png) and keep the [default `latest`](https://ocv.me/copyparty/doc/pics/dsm72-03.png) when it asks you which tag to use
|
||||||
|
* switch to the `Container` tab and click `Create`
|
||||||
|
* [choose `copyparty/ac:latest`](https://ocv.me/copyparty/doc/pics/dsm72-04.png) and click `Next`
|
||||||
|
|
||||||
|
finally, in the [Advanced Settings](https://ocv.me/copyparty/doc/pics/dsm72-05.png) window,
|
||||||
|
|
||||||
|
* under `Port Settings`, type `3923` into the `Local Port` textbox
|
||||||
|
* click `Add Folder` and select `/configs/cpp` on your nas (the `cpp` folder in the `configs` shared-folder), and change `Mount path` to `/cfg`
|
||||||
|
* click `Add Folder` and select `/media1` on your nas (the shared-folder that copyparty can share in its web-UI) and change `Mount path` to `/w`
|
||||||
|
* if you are adding multiple shared-folders for media, then the `Mount path` of the 2nd folder should be something like `/w/share2` or `/w/music`
|
||||||
|
|
||||||
|
copyparty will launch and become available at http://192.168.1.9:3923/ (assuming `192.168.1.9` is your nas ip)
|
||||||
|
|
||||||
|
|
||||||
|
# DSM v6.x, DSM v7.1.x or older
|
||||||
|
|
||||||
|
if you're using DSM 7.1 or older, then you don't have [Container Manager](https://www.synology.com/en-global/dsm/packages/ContainerManager) yet and you'll have to use [Docker](https://www.synology.com/en-global/dsm/packages/Docker?os_ver=6.2&search=docker) instead. Here's how:
|
||||||
|
|
||||||
|
* open the `Package Center` and install the [Docker package](https://ocv.me/copyparty/doc/pics/dsm71-01.png) by `Docker Inc.`
|
||||||
|
* open the `Docker` app
|
||||||
|
* go to the `Registry` tab and search for `copyparty`
|
||||||
|
* [doubleclick copyparty/ac](https://ocv.me/copyparty/doc/pics/dsm71-02.png) and keep the [default `latest`](https://ocv.me/copyparty/doc/pics/dsm71-03.png) when it asks you which tag to use
|
||||||
|
* switch to the `Container` tab and click `Create`
|
||||||
|
* [choose `copyparty/ac:latest`](https://ocv.me/copyparty/doc/pics/dsm71-04.png) and `Next`
|
||||||
|
* in the [Network](https://ocv.me/copyparty/doc/pics/dsm71-05.png) window, keep the default `Use the selected networks: [x] bridge`
|
||||||
|
* in the [General Settings](https://ocv.me/copyparty/doc/pics/dsm71-06.png) window, just keep everything default (in other words, everything disabled)
|
||||||
|
* in the [Port Settings](https://ocv.me/copyparty/doc/pics/dsm71-07.png) window, change `Local Port` to `3923` (or choose something else, but it cannot be the default `Auto`)
|
||||||
|
|
||||||
|
finally, in the [Volume Settings](https://ocv.me/copyparty/doc/pics/dsm71-08.png) window, add a docker volume for copyparty config, and at least one volume for media-files which copyparty can share in its web-UI
|
||||||
|
|
||||||
|
* click `Add Folder` and select `/configs/cpp` on your nas (the `cpp` folder in the `configs` shared-folder), and change `Mount path` to `/cfg`
|
||||||
|
* click `Add Folder` and select `/media1` on your nas (the shared-folder that copyparty can share in its web-UI) and change `Mount path` to `/w`
|
||||||
|
* if you are adding multiple shared-folders for media, then the `Mount path` of the 2nd folder should be something like `/w/share2` or `/w/music`
|
||||||
|
|
||||||
|
copyparty will launch and become available at http://192.168.1.9:3923/ (assuming `192.168.1.9` is your nas ip)
|
||||||
|
|
||||||
|
|
||||||
|
# misc notes
|
||||||
|
|
||||||
|
note that if you only want to share some folders inside your data volume, and not all of it, then you can either give copyparty the whole shared-folder anyways and control/restrict access in the copyparty config file (recommended), or you can add each folder as a new docker volume (not as flexible)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## regarding ram usage
|
||||||
|
|
||||||
|
the ram usage indicator in both `Docker` and `Container Manager` is misleading because it also counts the kernel disk cache which makes the number insanely high -- the synology resource monitor shows the correct values, usually less than 100 MiB
|
||||||
|
|
||||||
|
to see the actual memory usage by copyparty, see `Resource Monitor` -> `Task Manager` -> `Processes` and look at the `Private Memory` of `python3` which is probably copyparty
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## regarding performance
|
||||||
|
|
||||||
|
when uploading files to the synology nas with the respective web-UIs,
|
||||||
|
|
||||||
|
* `File Station` does about 16 MiB/s,
|
||||||
|
|
||||||
|
* `Synology Drive Server` does about 50 MiB/s; deceivingly fast upload speeds at first, but when the file is fully uploaded, there is a lengthy "processing" step at the end, reducing the average speed to about 50% of the initial
|
||||||
|
|
||||||
|
* copyparty maxes the HDD write-speeds, 99 MiB/s
|
||||||
|
|
||||||
|
when uploading to the synology nas over webdav,
|
||||||
|
|
||||||
|
* `WebDAV Server` by `Synology Inc.` in the Package Center does 86 MiB/s
|
||||||
|
|
||||||
|
* copyparty does 79 MiB/s; the NAS CPU is a bottleneck because copyparty verifies the upload checksum while `WebDAV Server` doesn't
|
Loading…
Reference in a new issue