Your client needs three PDFs from last year's project folder. You SSH in, hunt through paths you half remember, scp something to your laptop, email it, and hope you grabbed the right version. Or you pay for Dropbox seats so non-technical people can click a folder. There's a middle path: a web UI on top of a directory you already have.
File Browser is that middle path. ~35k GitHub stars, Apache 2.0, written in Go, and brutally simple — point it at a folder, log in through the browser, upload, download, rename, preview, and share. No sync client. No calendar app bolted on. Just files.
What it actually does
File Browser is a web file manager for a path on your server. Mount /srv (or whatever you choose) into the container, and that tree becomes browsable in a clean Material Design-ish UI.
Core ops. Upload, download, delete, rename, move, create folders. Preview images, PDFs, and text files in the browser. Edit text files inline when you need a quick config tweak without opening Vim over SSH.
Multi-user with scopes. Create accounts where each user sees only their assigned directory — handy for giving a client read-only access to /srv/client-deliverables without exposing the whole VPS.
Public shares. Generate time-limited links to a file or folder, optionally password-protected. Share management lives in settings so you can revoke links when the contract ends.
Single binary. The whole app is one Go binary (or one Docker image). SQLite stores users and settings. RAM usage is tiny — this runs comfortably on the same Canadian VPS that hosts your other self-hosted tools.
Maintenance mode — read this. The project considers itself a finished product. Security fixes and bug triage continue; new features aren't on the roadmap. That's honest, not a death sentence — for "browse my files in a browser," it's done. If you need OIDC, multi-source mounts, and indexed search, the community fork FileBrowser Quantum exists; this post is about the original because it's stable, minimal, and still widely deployed.
Why self-host file access?
Dropbox without the Dropbox bill. Small teams sharing deliverables, backups, or media dumps don't always need full sync — they need upload, download, and a link that works.
Canadian data residency. Client files on a Montreal VPS behind File Browser beat "it's in someone's US object storage" when contracts mention where data lives.
VPN alternative for simple cases. Not every file share needs Nextcloud's full suite. File Browser behind HTTPS and strong passwords covers "grab this zip from the server" for many agencies.
Lightweight. ~512 MB RAM. No Postgres cluster. No Redis. One container and a volume mount.
What running it takes
Docker is the common path:
docker run -d \
--name filebrowser \
-p 8080:80 \
-v /path/to/your/files:/srv \
-v /path/to/config:/config \
--restart unless-stopped \
filebrowser/filebrowser
The s6 image variant respects PUID and PGID so uploads land with correct ownership on the host — match those to the user who owns the files (id on Linux).
First login defaults are admin / admin. Change them immediately. Put TLS in front with nginx or Caddy; increase upload size limits in the proxy if you share large video files.
Scope the mount carefully. Mounting /:/srv exposes your entire filesystem — almost never what you want. Mount a dedicated directory: client files, backups, media exports.
File Browser includes a command runner feature that can execute shell commands — it's disabled by default for good reason. Leave it off unless you understand the security implications.
Back up the /config volume (SQLite database with users and share links) alongside whatever you're serving from /srv.
Who it's for (and who should skip it)
Good fit: agencies sharing deliverables with clients, homelabbers who want browser access to a NAS folder, devs who need a quick web UI on a backup directory, small teams who find Nextcloud heavy for their actual needs.
Maybe skip it: if you need real-time collaborative editing, calendar, contacts, and Talk — use Nextcloud or similar. If you need automatic phone photo backup — that's Immich. If you require active feature development and SSO out of the box, look at FileBrowser Quantum or a fuller platform.
Hosting it in Canada
We deploy File Browser on Canadian Docker hosting — scoped volume mounts, TLS, hardened defaults (no command runner), and backups on the config database. Pair with Uptime Kuma if clients depend on download links for daily work.
Tell us what directory you're exposing and who needs access — we'll lock down mounts and user scopes before anything goes public.