Copyparty
Install the Copyparty file server with its own service user, configuration and update helper.
copyparty.sh installs copyparty-sfx.py from the 9001/copyparty releases
and runs it as a dedicated user.
| Run it | On the system that should serve the files. The script has no Proxmox VE host check |
| Supported OS | Debian, Ubuntu (ID=debian or ID=ubuntu in /etc/os-release) and Alpine. Anything else exits with code 238 |
| Port | 3923 by default, asked at install |
| Source | tools/addon/copyparty.sh |
Run
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/addon/copyparty.sh)"Prompts
| Prompt | Answer |
|---|---|
Install CopyParty? (y/N): | y installs. Anything else exits |
Enter port for CopyParty [3923]: | Listening port |
Set data directory [/var/lib/copyparty]: | Directory that is shared as / |
Enable authentication? (Y/n): | n creates no account. Anything else asks the next two questions |
Set admin username [admin]: | Account name |
Set admin password [random]: | Hidden input. Empty generates a random 20-character password |
When /usr/local/bin/copyparty-sfx.py already exists:
| Prompt | Answer |
|---|---|
Uninstall CopyParty? (y/N): | y removes it. Read Remove first |
Update CopyParty? (y/N): | y updates. Anything else exits with No action selected |
What it creates
| Item | Value |
|---|---|
| Packages | python3, Pillow (python3-pil or py3-pillow), ffmpeg, curl |
| User and group | copyparty, no login shell |
| Program | /usr/local/bin/copyparty-sfx.py |
| Configuration | /etc/copyparty.conf (mode 640, owned by copyparty) |
| Data | /var/lib/copyparty or the directory you entered |
| Logs | /var/log/copyparty (copyparty.log, copyparty.err, and Copyparty's own cpp-*.txt.xz files) |
| Service | copyparty (systemd unit /etc/systemd/system/copyparty.service, or OpenRC script /etc/init.d/copyparty on Alpine) |
| Update helper | /usr/local/bin/update_copyparty |
| Login | Saved to ~/copyparty.creds (mode 600) when authentication is enabled |
The generated configuration shares the data directory as / with these
permissions:
[/]
/var/lib/copyparty
accs:
rw: *
rwmda: adminrw: * gives read and write access to everyone, with or without
authentication. The admin account additionally gets move, delete and admin
rights. Without authentication the rwmda line is left out.
Update
Run update_copyparty, answer y to Update CopyParty?, or let the
container's update command offer it (see
how update finds add-ons).
If a newer release exists, the service is stopped, copyparty-sfx.py is
replaced and the service is started again. The configuration is not touched.
Remove
Uninstall CopyParty? stops and removes the service, deletes
/usr/local/bin/copyparty-sfx.py, /etc/copyparty.conf,
/var/lib/copyparty, /var/log/copyparty, the copyparty user and group and
/usr/local/bin/update_copyparty.
/var/lib/copyparty is deleted with everything uploaded to it. A custom data
directory entered at install is not deleted. ~/copyparty.creds stays.
Limits
- On Alpine the OpenRC script uses
/var/lib/copypartyas its working directory regardless of the data directory you entered; the shared path itself comes from/etc/copyparty.conf. - Tighten
accs:in/etc/copyparty.confif anonymous write access is not what you want.