Why FileBrowser?

You need web access to your server’s files. Not a full cloud suite — just a file manager:

  • Web interface — Browse, upload, download from any browser.
  • Share links — Password-protected, with expiration.
  • Multi-user — Different root directories and permissions.
  • Code editor — Edit text files in the browser.
  • Command runner — Execute scripts from the UI.
  • Single binary — No database, no dependencies.

Prerequisites

  • Docker on any Linux/macOS server.
  • A directory to serve files from.

Step 1: Deploy with Docker

docker run -d \
  --name filebrowser \
  --restart=always \
  -v /path/to/files:/srv \
  -v filebrowser-db:/database \
  -p 8080:80 \
  filebrowser/filebrowser

Default login: admin / admin (change immediately).


Step 2: User Permissions

PermissionDescription
AdminFull access to all files and settings
ViewBrowse and preview files
CreateUpload files and create folders
RenameRename files and folders
DeleteRemove files and folders
ShareCreate shareable links
DownloadDownload files and folders
ExecuteRun configured commands/scripts

FileBrowser vs Alternatives

FeatureFileBrowserNextcloudSeafileMinIO
PurposeWeb file managerFull cloud suiteSync + shareObject storage
Footprint~10 MB binary~500 MB+~200 MB~100 MB
DatabaseSQLite (embedded)MySQL/PostgreSQLMySQL/SQLiteNone
Sync clientNoYesYesS3-compatible
Share linksYesYesYesPre-signed URLs
UsersYesYesYesIAM policies
Best forSimple file accessFull collabTeam syncS3 API

Troubleshooting

ProblemSolution
Permission denied on uploadsCheck Docker volume permissions; ensure the container user can write to /srv
Can’t access from networkVerify port mapping and firewall rules
Share link returns 404Ensure the base URL is configured in Settings > Global Settings
Large file upload failsIncrease reverse proxy body size limit (e.g., client_max_body_size 10G in Nginx)

Summary

  • Web file manager — no sync client needed, just a browser.
  • Multi-user with granular permissions and separate root directories.
  • Share links with password protection and expiration.
  • Lightweight — single 10 MB binary, no external database.