跳转到内容

File Browser:轻量网页文件管理

一个极简的网页文件管理器:浏览、上传、下载、在线预览、生成分享链接。占用极小,启动很快。

什么时候用它

系统自带的文件管理已经覆盖日常需求,装它的理由通常很具体:

  • 只想把某一个目录开放给别人,不希望对方拥有 NAS 账号。
  • 需要一个独立于系统账号体系的访问入口(例如给某个项目组用)。
  • 想给某个容器的数据目录加一个简单的查看界面。

如果只是自己用,用系统自带的就够了,见文件管理和分享链接

部署

yaml
services:
  filebrowser:
    image: filebrowser/filebrowser:latest
    container_name: filebrowser
    restart: unless-stopped
    user: "1000:1000"
    ports:
      - "8088:80"
    volumes:
      - /vol1/share/project:/srv
      - /vol1/docker/filebrowser/database:/database
      - /vol1/docker/filebrowser/config:/config

/srv 是它能访问的根目录——只挂载你真正想开放的那个目录,不要图省事挂整个存储空间。

user 指定运行身份,决定了它在宿主机上创建的文件属于谁。

默认账号必须立刻修改

首次启动后会生成一个默认管理员账号(通常是 admin,密码在容器日志里或为默认值)。启动后第一件事就是登录并修改用户名和密码,然后再考虑让任何人访问。

sh
docker logs filebrowser

对外开放时

这类服务被开放出去的概率很高,所以要格外注意:

  1. 前面加 HTTPS 反向代理,见 Nginx Proxy Manager
  2. 给每个使用者建独立账号,按目录限制范围,不要共用管理员账号
  3. 需要对方只能下载时,关闭上传和删除权限。
  4. 用完就关。临时开放的入口最容易被忘记。

数据与备份

database 目录里是用户和设置(SQLite),体积很小。真正的数据在你挂载的 /srv 目录里,按该目录本身的备份策略处理即可。

已知坑

  • 它的权限体系独立于 NAS 用户,两套权限不会互相约束。容易出现「NAS 上设了只读,但 File Browser 里能删」的情况——实际权限取决于容器的运行身份。
  • 上传大文件受浏览器和反向代理的限制影响,大批量传输仍建议用 SMB。
  • 分享链接的风险与系统自带的相同:设有效期、加密码。

参考资料

fnOS 非官方中文使用指南,与飞牛官方无隶属关系。