Add copyparty file server with full integration
- Configure copyparty file server with user authentication - Set up multi-volume structure (shared, documents, music, videos, private) - Create systemd service for automatic startup - Add Nginx reverse proxy integration on /cloud/ path - Update documentation with complete setup and management guide - Mark Gitea and file server tasks as completed in TODO 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -36,14 +36,26 @@ server {
|
||||
proxy_read_timeout 60s;
|
||||
}
|
||||
|
||||
# Future services (commented out for now)
|
||||
# location /cloud/ {
|
||||
# proxy_pass http://127.0.0.1:8080/;
|
||||
# proxy_set_header Host $host;
|
||||
# proxy_set_header X-Real-IP $remote_addr;
|
||||
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
# proxy_set_header X-Forwarded-Proto $scheme;
|
||||
# }
|
||||
# Copyparty file server
|
||||
location /cloud/ {
|
||||
proxy_pass http://127.0.0.1:8082/cloud/;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# Handle websockets for live updates
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
|
||||
# Increase timeouts for large file uploads
|
||||
proxy_connect_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
proxy_read_timeout 300s;
|
||||
|
||||
# Increase client max body size for file uploads
|
||||
client_max_body_size 10G;
|
||||
}
|
||||
|
||||
# location /media/ {
|
||||
# proxy_pass http://127.0.0.1:8096/;
|
||||
|
||||
42
config/systemd/copyparty.service
Normal file
42
config/systemd/copyparty.service
Normal file
@@ -0,0 +1,42 @@
|
||||
# DEPLOYMENT LOCATION: /etc/systemd/system/copyparty.service
|
||||
# Deploy with: sudo cp config/systemd/copyparty.service /etc/systemd/system/
|
||||
# Enable with: sudo systemctl daemon-reload && sudo systemctl enable --now copyparty
|
||||
|
||||
[Unit]
|
||||
Description=copyparty file server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
SyslogIdentifier=copyparty
|
||||
Environment=PYTHONUNBUFFERED=x
|
||||
ExecReload=/bin/kill -s USR1 $MAINPID
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
|
||||
# Run as hoborg user with existing configuration
|
||||
User=hoborg
|
||||
Group=hoborg
|
||||
WorkingDirectory=/home/hoborg
|
||||
Environment=XDG_CONFIG_HOME=/home/hoborg/.config
|
||||
|
||||
# Use copyparty with config file
|
||||
ExecStart=/usr/bin/copyparty -c /home/hoborg/.config/copyparty/copyparty.conf
|
||||
|
||||
# Some basic hardening
|
||||
MemoryMax=25%
|
||||
ProtectClock=true
|
||||
ProtectControlGroups=true
|
||||
ProtectHostname=true
|
||||
ProtectKernelLogs=true
|
||||
ProtectKernelModules=true
|
||||
ProtectKernelTunables=true
|
||||
RestrictNamespaces=true
|
||||
RestrictRealtime=true
|
||||
RestrictSUIDSGID=true
|
||||
|
||||
# Allow access to home directories
|
||||
ProtectHome=false
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user