Filebrowser: The ultimate self-hosted server browser

For a long time, I've been looking for a way to replace my Synology file browser (DS File) with something more user friendly. After browsing DockerHub, GitHub and all my bookmarks, I found File Browser!

Filebrowser: The ultimate self-hosted server browser

For a long time, I've been looking for a way to replace my Synology file browser (DS File) with something more user friendly.

After browsing DockerHub, GitHub and all my bookmarks, I found File Browser!

Installation

This application is available on GitHub and DockerHub and is super straight-forward to install.
On my side, I installed it using docker-compose. No worries, you can find well detailed package or Docker installation steps in their documentation.

First thing first, you need to create a folder for this project and put inside your docker-compose.yml file.

version: "3.7"
services:
  filebrowser:
    container_name: filebrowser
    image: filebrowser/filebrowser:latest
    restart: unless-stopped
    environment:
      - PUID=1026
      - PGID=100
      - TZ=Europe/Paris
    ports:
      - 8084:80
    volumes:
      - /volume1:/srv
      - /volume1/docker/filebrowser/config/database.db:/database.db
    labels:
      - com.centurylinklabs.watchtower.enable=true
filebrowser/docker-compose.yml

The folder /srv is the root folder you want your users to be able to browse. It will define the main scope.
/database.db is, without surprise, the database of File Browser!

Please remember to create all folders and files before trying to launch your docker-compose.

How does it look on my Synology NAS:

filebrowser/
      |_ docker-compose.yml
      |_ config/
            |_database.db

And now, you just have to launch your docker-compose file with the following command cd filebrowser && docker-compose up -d

Features

Gorgeous design

The design of File Browser is everything I was looking for. Simple, clear and provided with a native dark mode!

User management

With File Browser, you can easily manage several user accounts and define a different scope for each of them. This scope is going to define what path each user can see. The path you are going to define for each users must be part of the initial folder you mounted in your docker-compose file.
Example: If you mount /srv to your /media folder, you will only be able to grant access to path inside /media

For each user, you will be able to define permissions like:

  • Administrator
  • Create files and directories
  • Delete files and directories
  • Download
  • Edit files
  • Execute commands
  • Rename or move files and directories
  • Share files

Advanced settings

With , you can also defined scripts which are going to be executed pre and/or post each of the actions your users can do. For example, you can write down a small script to ensure all the archives uploaded by your users are always direct unzip.

Another great feature of File Browser is the regex management! You can easily customize the permissions of your users using powerful regex.
As an example, I used the one below to hide all @ kind of files you can find in a Synology NAS.

Use the regex [\/]@+ to hide Synology native files

Conclusion

File Browser is the perfect balance between features and design! A must-have to browse and share your files with a self-hosted solution.

Looking for help?
If you are looking for some help or want a quick chat, please head over to the Discord Community!