Files
serverAppConfigs/docs/Dankserver/Copyparty.md
T
Frank e3eb5334cb feat: initialize serverAppConfigs with podman stacks for Dankserver and Dankclaw
- Dankserver stack: RomM, Copyparty, Calibre-Web, node-exporter
- Dankclaw stack: Gluetun VPN (SearXNG tunnel), SearXNG+Valkey, ComfyUI
  (CPU backend), OpenWebUI, Hermes, Gitea+Postgres (migrated), Caddy
  reverse proxy, Grafana+Prometheus+Loki+Alloy observability
- Caddyfiles with .local hostname convention and basicauth homepage
- bind-mount storage policy, no named volumes
- deploy.sh mirroring vllmScripts git workflow (push -> pull -> restart -> health)
- docs/ Obsidian vault: per-service docs from frank-default-small research
  subagents (promtail EOL -> Alloy; gitea SECRET_KEY preservation; ComfyUI --cpu)
- bats test suite at 6 seams — 22 tests green
2026-08-13 20:19:41 -07:00

1.5 KiB

Copyparty

Copyparty is a lightweight file server that shares and streams files over HTTP. It handles large payloads, media streaming, uploads, and directory browsing from a single Python binary.

Host: Dankserver — Hostname: files.dankserver.local — Docs: https://github.com/9001/copyparty

Facts (from research)

Item Value
Image ghcr.io/9001/copyparty:latest (official Dockerfile in repo)
Port 3923 (host) → 3923 (container)
Volume bind mount the shared root directory
Auth per-directory .cpy config files, HTTP basic auth
Streaming HTTP range requests, HLS, WebDAV

Configuration

  • Run with -e COPAY_PASS=... or configure per-folder passwords.
  • Set -e COPAY_MODE=rw for read-write shares where uploads are allowed.
  • The container publishes port 3923; expose it to Caddy only, not the WAN.
  • --resumable enables resumable uploads for large files (models, ISOs).

Volumes

Container path Host path (convention)
/data /opt/copyparty/data

Healthcheck

A simple TCP check on 3923 works; Copyparty returns HTTP 200 on the web root.

Gotchas

  • Large transfers benefit from disabling TLS inside the app and letting Caddy terminate TLS.
  • Do not give Copyparty the whole disk; give it a dedicated share directory.
  • Upload tokens scoped per folder prevent accidental global write access.

See Also