Is there an app I can self-host that will let users upload stuff to my server? I need something where I can send a link to someone, and they can upload files & folders to my server (it doesn’t matter much to me where, as long as I can transfer them out to wherever I need later).
For example, I’m working to archive my parents’ family photos which right now live on a bunch of external HDDs. I need a way for my (non-technical) father to be able to upload a folder with potentially 10k plus files to my server. Because of his poor internet reliability, and the potentially large size, I need something that has resumability (so that if it fails, it can pick up where it left off and not re-start from scratch)
Security-wise, it would be nice to be able to only have uploads work when I send a link. Other than that, I’m not worried about malicious uploads or anything.
Does anyone have any recommendations for this? (Or, if nothing exists, would folks find this useful? I might end up making it if I can’t find it)
Take a look at NextCloud - very easy to host and has great user management and sharing.
There are also a good amount of apps that are one click integration if you need to expand on functionality.
Thanks! I already use NextCloud and quite like it! Hover, I find their file upload feature to be lacking for this use-case. Sadly, it crashes/freezes the browser when I try to upload a folder with a lot of files (which is the main thing I’ll need to do with this)
If you’re doing the uploads yourself, the fastest solution for large files (e.g. compress into a tar/7z) will be rsync.
It requires minimal setup (ssh or vpn connection) and uses chunk transfer which is typically faster and can be resumed in event of connection failures
I love rsync, and also have been using croc a lot recently for similar stuff. It’s not really feasible for non-technical users who don’t even want to think about using a terminal though.
Would Syncthing work for you?
It’s not really the workflow I was imagining for this, but it might actually not be a bad idea. It might be a bit weird to use, but if I setup a “drop folder” on his machine that he could plop folders/files into then maybe it could work. Thanks!
Do you want the entirety of a directory system uploaded? If that’s the case you could use syncthing to just share the source directory. Then your dad wouldn’t have to move anything. Add in something like Tailscale or ZeroTier and you could control all the syncthing settings from the webui.
Yeah, I’m doing a test-run rn with syncthing and finding it pretty slow. Not sure why but it’s downloading files at like 100Kbps even though I know the upload speed of the network is much higher. I don’t have any bandwidth limits setup in syncthing so I don’t think that’s why…
That’s a bummer. Might be worth running an iperf test between your machine and your dad’s just to get a baseline speed. Could be something in between your two networks is routing slowly.
Glad to help 👍
Try out sharry. Sharry is a self-hosted file sharing web application.
It works pretty well for my use cases. I also like the alias feature, what is pretty much what you are searching for. The only thing I miss, is the possibility to download a share as a zip folder. But there is an open issue for it, so maybe it will be added in future (again).
When I’ve had need of collecting files from someone, I’ve normally thrown up a FileBrowser instance. Pretty sure it’s not resume-able though.
I would just use a backup tool to get everything on the computer.