# docker-compose.yml ```yml version: '3' services: file-browser: restart: always image: filebrowser/filebrowser:latest container_name: filebrowser user: 1000:1000 ports: - 8040:80 volumes: - /media/share:/srv - ./data/filebrowser.db:/database.db - ./data/settings.json:/.filebrowser.json - ./data/gafiled.png:/config/logo.png - ./data/branding:/branding security_opt: - no-new-privileges:true ``` # 準備 在 `docker compose up -d` 之前,需要先把檔案準備好。 ```shell touch data/filebrowser.db touch data/settings.json ``` `data/settings.json` 的內容: ```json { "port": 80, "baseURL": "", "address": "", "log": "stdout", "database": "/database.db", "root": "/srv" } ``` # 登入 ~~預設的帳號密碼是`admin/admin`,記得要改掉。~~ 新版的 image 變成會自動產生一組密碼,要看 log 才會知道 admin 的密碼是什麼。 # 問題 ## 進入 shell 因為Filebrowser會lock DB,所以docker在跑得時候會無法使用Filebrowser的command,所以需要先把docker停掉,然後用以下命令登入: ```shell sudo docker run -it -v ./data/filebrowser.db:/database.db -v data/settings.json:/.filebrowser.json --entrypoint /bin/sh filebrowser/filebrowser ``` ## 更改密碼 要先停止 container: ```shell sudo docker stop filebrowser ``` 然後起一個臨時的 container,start command 就用更改密碼的 command。 ```shell sudo docker run --rm -it -v :/database filebrowser/filebrowser users update admin --password "" --database /database/filebrowser.db ``` 例: ```shell sudo docker run --rm -it -v ./data/database:/database filebrowser/filebrowser users update admin --password "" --database /database/filebrowser.db ``` # 參考 - [Filebrowser Docker Installation | All about](https://bobcares.com/blog/filebrowser-installation-in-docker/) - [filebrowser/filebrowser: 📂 Web File Browser](https://github.com/filebrowser/filebrowser)