Add Copyparty Docker configuration
- Replace config file with command-line arguments for Docker compatibility - Enable file search, deduplication, and partial upload features - Configure reverse proxy support with xff-src and rproxy flags - Add password database integration with chpw support - Map all NAS volumes with appropriate permissions - Fix health check to use /files/ path - Remove obsolete copyparty.conf (incompatible with Docker image)
This commit is contained in:
@@ -1,77 +0,0 @@
|
|||||||
# Copyparty Configuration for Homelab
|
|
||||||
# DEPLOYMENT LOCATION: /home/hoborg/.config/copyparty/copyparty.conf
|
|
||||||
|
|
||||||
[global]
|
|
||||||
# Network settings
|
|
||||||
i: 127.0.0.1
|
|
||||||
p: 8082
|
|
||||||
rp-loc: /files
|
|
||||||
|
|
||||||
# Reverse proxy configuration
|
|
||||||
rproxy: -1
|
|
||||||
|
|
||||||
# Security and features
|
|
||||||
usernames
|
|
||||||
chpw
|
|
||||||
chpw-db: /home/hoborg/.config/copyparty/passwords.json
|
|
||||||
e2dsa
|
|
||||||
dedup
|
|
||||||
dotpart
|
|
||||||
|
|
||||||
# Upload settings
|
|
||||||
u2ts: c
|
|
||||||
chmod-f: 644
|
|
||||||
chmod-d: 755
|
|
||||||
|
|
||||||
# Server name
|
|
||||||
name: homelab-files
|
|
||||||
|
|
||||||
[accounts]
|
|
||||||
guest: SecurePass2024!
|
|
||||||
hoborg: AdminPass2024!
|
|
||||||
|
|
||||||
[/shared]
|
|
||||||
/mnt/nas/shared
|
|
||||||
accs:
|
|
||||||
rw: guest
|
|
||||||
rwmd: hoborg
|
|
||||||
|
|
||||||
[/documents]
|
|
||||||
/mnt/nas/documents
|
|
||||||
accs:
|
|
||||||
rwmd: hoborg
|
|
||||||
|
|
||||||
[/music]
|
|
||||||
/mnt/nas/music
|
|
||||||
accs:
|
|
||||||
rw: guest
|
|
||||||
rwmd: hoborg
|
|
||||||
|
|
||||||
[/videos]
|
|
||||||
/mnt/nas/videos
|
|
||||||
accs:
|
|
||||||
rw: guest
|
|
||||||
rwmd: hoborg
|
|
||||||
|
|
||||||
[/private]
|
|
||||||
/mnt/nas/private
|
|
||||||
accs:
|
|
||||||
rwmd: hoborg
|
|
||||||
|
|
||||||
[/pictures]
|
|
||||||
/mnt/nas/pictures
|
|
||||||
accs:
|
|
||||||
rw: guest
|
|
||||||
rwmd: hoborg
|
|
||||||
|
|
||||||
[/installers]
|
|
||||||
/mnt/nas/installers
|
|
||||||
accs:
|
|
||||||
rw: guest
|
|
||||||
rwmd: hoborg
|
|
||||||
|
|
||||||
[/torrent]
|
|
||||||
/mnt/nas/torrent
|
|
||||||
accs:
|
|
||||||
rw: guest
|
|
||||||
rwmd: hoborg
|
|
||||||
90
config/docker/copyparty/docker-compose.yml
Normal file
90
config/docker/copyparty/docker-compose.yml
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
# Copyparty Docker Compose Configuration
|
||||||
|
# Deploy with: sudo mkdir -p /opt/docker/copyparty && sudo cp config/docker/copyparty/docker-compose.yml /opt/docker/copyparty/
|
||||||
|
# Start with: cd /opt/docker/copyparty && sudo docker-compose up -d
|
||||||
|
|
||||||
|
# COPYPARTY CONFIGURATION
|
||||||
|
# - File server with upload/download capabilities
|
||||||
|
# - WebDAV support for mobile and desktop clients
|
||||||
|
# - Bound to localhost only (reverse proxy required)
|
||||||
|
# - Configuration stored in repo at config/copyparty/copyparty.conf
|
||||||
|
|
||||||
|
services:
|
||||||
|
copyparty:
|
||||||
|
image: copyparty/ac:latest
|
||||||
|
container_name: copyparty
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
# Environment
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Budapest
|
||||||
|
|
||||||
|
# Network - bind to localhost for security
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:8082:3923" # Web UI (reverse proxy only)
|
||||||
|
|
||||||
|
# Volume mounts
|
||||||
|
volumes:
|
||||||
|
# Password database
|
||||||
|
- /home/hoborg/.config/copyparty/passwords.json:/home/hoborg/.config/copyparty/passwords.json
|
||||||
|
# NAS storage volumes (mapped to container paths)
|
||||||
|
- /mnt/nas/shared:/w/shared:rw
|
||||||
|
- /mnt/nas/documents:/w/documents:rw
|
||||||
|
- /mnt/nas/music:/w/music:rw
|
||||||
|
- /mnt/nas/videos:/w/videos:rw
|
||||||
|
- /mnt/nas/private:/w/private:rw
|
||||||
|
- /mnt/nas/pictures:/w/pictures:rw
|
||||||
|
- /mnt/nas/installers:/w/installers:rw
|
||||||
|
- /mnt/nas/torrent:/w/torrent:rw
|
||||||
|
|
||||||
|
# Command with inline volume configuration using -v flag
|
||||||
|
command:
|
||||||
|
- --rp-loc=/files
|
||||||
|
- --name=homelab-files
|
||||||
|
- --usernames
|
||||||
|
- --chpw
|
||||||
|
- --chpw-db=/home/hoborg/.config/copyparty/passwords.json
|
||||||
|
- --xff-src=172.0.0.0/8
|
||||||
|
- --rproxy=-1
|
||||||
|
- -e2dsa
|
||||||
|
- --dedup
|
||||||
|
- --dotpart
|
||||||
|
- -a
|
||||||
|
- hoborg:AdminPass2024!
|
||||||
|
- -a
|
||||||
|
- guest:SecurePass2024!
|
||||||
|
- -v
|
||||||
|
- /w/shared:shared:r:rw,guest:rwmd,hoborg
|
||||||
|
- -v
|
||||||
|
- /w/documents:documents:rwmd,hoborg
|
||||||
|
- -v
|
||||||
|
- /w/music:music:r:rw,guest:rwmd,hoborg
|
||||||
|
- -v
|
||||||
|
- /w/videos:videos:r:rw,guest:rwmd,hoborg
|
||||||
|
- -v
|
||||||
|
- /w/private:private:rwmd,hoborg
|
||||||
|
- -v
|
||||||
|
- /w/pictures:pictures:r:rw,guest:rwmd,hoborg
|
||||||
|
- -v
|
||||||
|
- /w/installers:installers:r:rw,guest:rwmd,hoborg
|
||||||
|
- -v
|
||||||
|
- /w/torrent:torrent:r:rw,guest:rwmd,hoborg
|
||||||
|
|
||||||
|
# Resource limits
|
||||||
|
deploy:
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpus: '1.0'
|
||||||
|
memory: 1G
|
||||||
|
reservations:
|
||||||
|
cpus: '0.25'
|
||||||
|
memory: 256M
|
||||||
|
|
||||||
|
# Health check
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3923/files/"]
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
|
start_period: 30s
|
||||||
Reference in New Issue
Block a user