POST

Filebrowser:一个单文件的网页文件管理器,装完就能用

没有数据库、没有依赖,一个二进制文件就是全部。浏览、上传、下载、在线编辑、分享,够日常用。

如果你只是想要"在浏览器里翻文件、上传下载、改个配置文件",前面那些网盘系统都太重了。

Filebrowser 是个 Go 写的单文件程序:一个二进制,配一个配置文件,跑起来就完事。

装

services:
  filebrowser:
    image: filebrowser/filebrowser:latest
    container_name: filebrowser
    ports: ["8082:80"]
    volumes:
      - /vol1:/srv
      - ./filebrowser/database.db:/database.db
      - ./filebrowser/config.json:/config.json
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Shanghai
    restart: unless-stopped

打开 http://NAS地址:8082,默认账号密码都是 admin / admin,进去第一件事改掉。

/vol1 挂到容器里的 /srv,等于把整个存储卷暴露给这个界面——想限制范围,改成具体子目录,比如 /vol1/share。

它能干什么

浏览和操作:上传、下载、新建文件夹、重命名、删除、批量选择。

在线编辑:点开文本文件(配置、脚本、Markdown)直接在浏览器里改,保存即写入。这个功能我用得最多——改个 compose 文件不用开 SSH。

在线预览:图片、视频、PDF、代码高亮。

分享链接:单个文件生成一个带过期时间的下载链接。

多用户:建账号,给每个账号分配可访问的目录和权限(读写/只读)。

三个实用场景

一、给家人一个"只读"的入口

建一个账号,只授权照片目录,只读。给他们一个网址,能看能下载,动不了别的东西。

二、手机上传

在手机上打开这个网页,选"上传",能把照片、文件直接传进 NAS。比装 App 快。

三、临时改配置

某个容器配置错了,SSH 又连不上,打开 Filebrowser 找到那个文件改掉,比什么都快。

几个设置值得改

默认语言

config.json 里没有语言项,它在界面里设:设置 → 个人设置 → 语言 → 简体中文。

关闭注册

默认允许注册新用户。多用户场景下这很危险——关掉,只留你自己建的账号。

根目录范围

/srv 是整个卷的话,用户能看到所有目录。给普通账号单独设一个目录(Scope)。

和 Cloudreve 的区别

  • Filebrowser:轻,单文件,管理型——像"文件资源管理器";
  • Cloudreve:重,多存储后端,分享型——像"网盘"。

日常管理用 Filebrowser,对外分享用 Cloudreve。两个一起装也没问题,加起来不到 100 MB。

会踩的坑

权限错误,没法写文件 PUID/PGID 和你宿主机目录的属主不一致。SSH 上去 id 看当前用户,填那个数字。

改了 database.db 没生效 它是 SQLite,挂载时文件必须已存在,否则 Docker 会创建一个目录。先 touch 一下再启动。

中文文件名乱码 容器 locale 问题,加 LANG=C.UTF-8。

忘了密码 进容器执行 filebrowser users update admin --password 新密码。

别把根目录开到公网 它没有防暴力破解机制,账号密码是唯一防线。走隧道 + 认证。

它适合谁

  • 想要一个轻量网页文件管理器的;
  • 需要给家人一个只读/受限入口的;
  • 经常在浏览器里改配置文件的。

不适合:需要分享链接带提取码、多存储后端、配额管理的(用 Cloudreve);只是自己偶尔传个文件(飞牛自带文件管理够)。

最后

Filebrowser 的卖点是简单:一个文件、一个配置、一个端口。

在"装个服务要先读半小时文档"的今天,这种简单本身就值钱。

有问题留言。

👁 - 次浏览

留言

← 返回首页