Web file manager for a chosen host directory.
Educational example only. Review every volume path, port, and credential before you run this. Do not copy production secrets into your wiki or git repo.
_shared/.env for non-secrets, _shared/.secret for credentialsmkdir -p /path/to/docker/stacks/filebrowser
cd /path/to/docker/stacks/filebrowser
# paste compose.yaml below, then:
docker compose pull
docker compose up -d
---
services:
filebrowser:
image: filebrowser/filebrowser:s6
container_name: filebrowser
hostname: filebrowser
env_file:
- /path/to/docker/stacks/_shared/.env
- /path/to/docker/stacks/_shared/.secret
environment:
- FB_NOAUTH=true
logging:
driver: json-file
options:
max-file: ${DOCKERLOGGING_MAXFILE:-10} # Max number of log files
max-size: ${DOCKERLOGGING_MAXSIZE:-200k} # Max file size
volumes:
- /path/to/docker_syno/sftpgo/data/data/anonymous:/srv # Mount your desired file directory
- /path/to/docker/data/filebrowser/config:/config # Persistent configuration directory
- /path/to/docker/data/filebrowser/database:/database # Persistent database directory
ports:
- 30004:80 # Map host port 8080 to container port 80
restart: unless-stopped
FB_NOAUTH=true is lab-only — enable auth for anything shared.