-
Notifications
You must be signed in to change notification settings - Fork 46
Getting Started
How to try out filebrowser -- no persistent database (default username and password is admin/admin)
images are available from dockerhub gtstef/filebrowser
and github ghcr ghcr.io/gtsteffaniak/filebrowser
image tag | Download Size | features | description |
---|---|---|---|
latest, beta | 60 MB | ffmpeg and some document preview support (archs: arm64, amd64) | this is the main image, which currently has the most features. Use this if you are working with documents -- even if you intend to include office integration. |
beta-slim | 15 MB | core functionality for (archs: arm64, arm32, amd64) | does not include media or office support in any way |
dev | 60 MB | unstable, has ongoing new changes (archs: arm64, amd64) | No not use |
To try out using docker run, (changes will not be saved on exit):
- This will run with the default config and no persistent db -- just to try it out. You can log in with
admin/admin
:
docker run -d -v /path/to/your/folder/to/use:/srv -p 80:80 gtstef/filebrowser:beta
you should be able to access the files from /path/to/your/folder/to/use
when you visit your machines http://localhost:80/ address on a browser
Go to releases and download the executable that matches your platform. Remember to install ffmpeg on your system if you want video preview support.
Note
You may need to enable executable permissions first. And platforms like macos will block and require allowing in security & privacy settings

You can execute the program (via running .\filebrowser.exe -c path\to\config.yaml
on windows or ./filebrowser -c path/to/config.yaml
on other platforms).
Tip
If you don't have a config file yet, you can generate one interactively with .\filebrowser.exe setup
, which will ask a few questions and optionally backup/move any database you might have created by accident.
By default, starting v0.7.5 will run without a config file, with a default source being the current directory.
However, a config file is generally necessary, you can download this example config and modify as needed with your sources path (absolute or relative paths are allowed).
Note
A full list of config file options can be found on the full config example wiki.
On docker, Non-root filebrowser user in docker is possible. When running as non-root
or filebrowser
make sure you either specify a server.cacheDir
that points to a directory the user has permission to (creating one beforehand if necessary). By default the filebrowser attempts to create tmp
directory in current directory.
docker run -u filebrowser -d -v $(pwd)/config.yaml:/home/filebrowser/config.yaml -v /path/to/folder:/srv -p 80:80 gtstef/filebrowser
You should be able to access the files from /path/to/folder
when you visit your machine's http://localhost:80/ address on a browser
I recommend using docker-compose if you want to run with a persistent database.
First, create a directory data
and add a config file data/config.yaml
which you can use this example config.yaml as reference.
Then create a docker compose file like this example docker-compose.yaml
:
services:
filebrowser:
environment:
FILEBROWSER_CONFIG: "data/config.yaml" #
volumes:
- '/path/to/folder:/folder' # Never mount root "/" directory to docker, always choose a sub-folder with your data.
- './data:/home/filebrowser/data' # mount the data folder you created with the config file.
# Advanced: If you plan to run with a different user besides root or filebrowser, you will need to mount a tmp directory.
# - './tmp/:/home/filebrowser/tmp/'
ports:
- '80:80' # the left 80 is the port **you will use** to access. The right 80 is the container port that **must match the config.yaml**
image: gtstef/filebrowser
# Optionally run as non-root filebrowser user
#user: filebrowser
restart: unless-stopped
Then, make sure to mount a modified config file that points to the database file you want to use:
server:
sources:
- path: /folder # corresponds to the folder mounted above in docker-compose
auth:
adminUsername: admin
adminPassword: admin
Want to configure your FileBrowser more? See configuration wiki.