mirror of
				https://github.com/9001/copyparty.git
				synced 2025-10-31 04:32:20 -06:00 
			
		
		
		
	
		
			
				
	
	
		
			49 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| > [!WARNING]  
 | |
| > I am unable to guarantee the quality, safety, and security of anything in this folder; it is a combination of examples I found online. Please submit corrections or improvements 🙏
 | |
| 
 | |
| to try this out with minimal adjustments:
 | |
| * specify what filesystem-path to share with copyparty, replacing the default/example value `/srv/pub` in `docker-compose.yml`
 | |
| * add `127.0.0.1 fs.example.com traefik.example.com authelia.example.com` to your `/etc/hosts`
 | |
| * `sudo docker-compose up`
 | |
| * login to https://fs.example.com/ with username `authelia` password `authelia`
 | |
| 
 | |
| to use this in a safe and secure manner:
 | |
| * follow a guide on setting up [authelia](https://www.authelia.com/integration/proxies/traefik/#docker-compose) properly and use the copyparty-specific parts of this folder as inspiration for your own config; namely the `cpp` subfolder and the `copyparty` service in `docker-compose.yml`
 | |
| 
 | |
| this folder is based on:
 | |
| * https://github.com/authelia/authelia/tree/39763aaed24c4abdecd884b47357a052b235942d/examples/compose/lite
 | |
| 
 | |
| incomplete list of modifications made:
 | |
| * support for running with podman as root on fedora (`:z` volumes, `label:disable`)
 | |
| * explicitly using authelia `v4.38.0-beta3` because config syntax changed since last stable release
 | |
| * reduced logging from debug to info
 | |
| * implemented a docker socket-proxy to not bind the docker.socket directly to traefik
 | |
| * using valkey instead of redis for caching
 | |
| 
 | |
| 
 | |
| # security
 | |
| 
 | |
| there is probably/definitely room for improvement in this example setup. Some ideas taken from [github issue #62](https://github.com/9001/copyparty/issues/62):
 | |
| 
 | |
| * Move valkey to a private network shared with just authelia
 | |
| * Add `watchtower` to manage your image version updates
 | |
| * Drop bridge networking for just exposing traefik's public ports
 | |
| 
 | |
| if you manage to improve on any of this, especially in a way that might be useful for other people, consider sending a PR :>
 | |
| 
 | |
| 
 | |
| # performance
 | |
| 
 | |
| currently **not optimal,** at least when compared to running the python sfx outside of docker... some numbers from my laptop (ryzen4500u/fedora39):
 | |
| 
 | |
| | req/s |  https D/L | http D/L | approach |
 | |
| | -----:| ----------:|:--------:| -------- |
 | |
| |  5200 | 1294 MiB/s | 5+ GiB/s | [copyparty-sfx.py](https://github.com/9001/copyparty/releases/latest/download/copyparty-sfx.py) running on host |
 | |
| |  4370 |  725 MiB/s | 4+ GiB/s | `docker run copyparty/ac` |
 | |
| |  2420 |  694 MiB/s | n/a      | `copyparty/ac` behind traefik |
 | |
| |    75 |  694 MiB/s | n/a      | traefik and authelia **(you are here)** |
 | |
| 
 | |
| authelia is behaving strangely, handling 340 requests per second for a while, but then it suddenly drops to 75 and stays there...
 | |
| 
 | |
| I'm assuming all of the performance issues is due to a misconfiguration of authelia/traefik/docker on my end, but I don't really know where to start
 |