news 2026/9/30 5:50:47

家里NAS存了不少文件,出门却用不上?我用FileBrowser搭了个网页版文件管理器

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
家里NAS存了不少文件,出门却用不上?我用FileBrowser搭了个网页版文件管理器

家里NAS存了不少文件,出门却用不上?我用FileBrowser搭了个网页版文件管理器

前言

家里的 NAS 越用越久,照片、工作文档、安装包和各种备份也越积越多。文件明明都放在自己的设备里,可一旦换到另一台电脑,或者人在外面突然想找一份资料,访问起来就没有想象中方便。尤其是临时借用别人的电脑时,我并不想先装一套客户端,只希望打开浏览器,登录后就能找到指定文件。

这也是我想给 NAS 增加一个独立文件管理入口的原因。系统自带的文件管理器负责日常操作,而 File Browser 提供了另一种方式:将指定目录展示为网页,支持上传、下载、创建文件夹以及按账号分配权限。它不替代 NAS 的存储能力,也不会自动获得整台机器的全部文件;能管理哪些内容,取决于部署时挂载了哪些目录。

这次我以飞牛 OS 为例,先通过 SSH 确认 Docker 环境,再部署 File Browser,完成初次登录、文件操作与用户管理。最后利用 cpolar 将局域网内的 8080 端口映射到公网,并配置固定地址,演示手机或异地电脑如何访问。文章保留实际命令和界面截图,也会说明配置文件挂载、初始密码和公网开放时容易忽略的细节。目标不是把 NAS 说成万能云盘,而是搭建一个自己能维护、也便于家人使用的网页文件入口。

1. 认识 File Browser:给指定目录加一个网页入口

File Browser 是开源的 Web 文件管理器。它的价值在于让浏览器承担文件操作界面:在授权范围内查看目录、上传下载、创建和重命名文件,以及按实际配置使用预览、分享等功能。对家庭 NAS 来说,手机、平板和电脑都可以通过网页进入同一套管理界面,减少不同设备之间反复传文件的步骤。

需要先划清一个边界:File Browser 不负责替你保存“云端副本”,也不会自动扫描 NAS 全部硬盘。容器里的/srv对应哪个宿主机目录,就主要管理那个目录及其可访问内容。原文演示的是先给它建立一个独立文件夹,后续上传文件,因此第一次登录看到空目录是正常的。

我主要用它处理四类事情:临时上传下载、集中整理资料、把部分目录分配给家人,以及人在外面时通过自己的地址找文件。多用户并不等于所有人都有相同权限,实际使用时要分别设置账号的访问范围和读写权限。

2. 环境准备:先连接飞牛 OS,再检查 Docker

2.1 打开 SSH

在飞牛 OS 的设置中找到 SSH,启用后使用 Windows PowerShell 或 macOS Terminal 连接 NAS。操作位置可对照下面三张原图。账号、IP 和登录方式以你自己的设备为准,不需要照抄他人的地址。

2.2 检查 Docker

打开终端后,原文使用了下面两条命令。我保留原始内容,方便与截图逐项对应:

docker-vsystemctl status-v

这里需要纠正一个检查思路:docker -v只能显示 Docker 客户端版本,systemctl status -v不能用于判断 Docker 服务是否正常运行。如果想进一步确认容器引擎是否可用,可执行docker info,或查看飞牛 OS 应用界面中的 Docker 运行状态;具体服务名称可能因系统环境而异。

3. 部署 File Browser:先理顺目录挂载

我先按原文建立三类目录:srv放准备交给网页管理的文件,config保存配置,db保存用户及应用数据库。下面是原文的创建命令:

mkdir-p/docker/filebrowser/{srv,config,db}

原文随后使用文件级挂载,把宿主机的config.json和database.db分别指向容器中的文件路径。这属于原教程使用的历史写法,原始命令保留如下:

dockerrun-d--namefilebrowser\--restartalways\-v/docker/filebrowser/srv:/srv\-v/docker/filebrowser/config/config.json:/etc/config.json\-v/docker/filebrowser/db/database.db:/etc/database.db\-p8080:80 filebrowser/filebrowser

新部署时不要忽略这里的版本差异。上一条命令依赖所用镜像对/etc/config.json、/etc/database.db的路径约定,而且前面仅建了目录,并未创建这两个文件。如果直接照抄,Docker 可能把不存在的宿主机文件路径创建成目录,导致文件挂载类型不匹配;镜像版本变化也可能使旧位置不再适用。

按照 File Browser 当前官方 Docker 文档,新的部署更适合使用目录挂载,配置和数据库由镜像在相应目录中初始化。继续使用刚才建立的目录时,可参考下面的现行目录式方案;它与上方历史命令是二选一,不要在同一台机器上把两条命令连续运行:

# 现行目录挂载示例;与上方原文历史命令二选一dockerrun-d--namefilebrowser\--restartalways\-v/docker/filebrowser/srv:/srv\-v/docker/filebrowser/db:/database\-v/docker/filebrowser/config:/config\-p8080:80\filebrowser/filebrowser

当前官方文档还说明,基础镜像默认以 UID/GID 为1000:1000的用户运行。若容器无法写入db、config或srv,应检查这几个宿主机目录的实际所有者及读写权限,再按飞牛 OS 的用户和共享目录权限进行调整。不要为了省事给整块 NAS 共享目录执行chmod -R 777。如果原来的filebrowser容器已经存在,先检查其状态与数据,再决定是否迁移,切勿覆盖有数据的实例。

容器创建后,按原文命令检查其状态:

dockerps-a

确认容器处于运行状态后,在与 NAS 同一局域网的浏览器打开http://飞牛IP:8080。8080 是宿主机端口;容器内部仍使用 80。只要前面的映射不变,后续 cpolar 也要指向 8080,而不是 80。

4. 登录并完成基础文件管理

4.1 从日志查找初始密码

首次启动后,我先查看容器日志获取管理员账号的初始登录信息。原文对应命令如下:

dockerlogs filebrowser

File Browser 当前官方文档说明,首次初始化时会在日志中显示admin用户的随机密码,并且通常只显示一次。先妥善保存,再登录页面;如果数据库是沿用旧数据,行为则以该实例原有账号为准。

4.2 上传、创建和整理文件

刚部署完成时目录里没有文件,不是程序出错:我挂载的是新建的/docker/filebrowser/srv。如果希望访问真正存放家庭资料的共享目录,需要按实际 NAS 路径重新规划/srv的挂载范围,并确认容器账号有对应权限。不要直接把根目录或所有私人资料都开放给一个共享账号。

我先在网页里上传一份文件,检查上传后的目录和列表是否正常显示。下面依次保留原文的三张操作截图。

除了上传已有文件,也能按权限创建新文件或文件夹,适合把临时资料与长期归档内容分开管理。

4.3 设置中文界面和独立用户

在个人设置中切换界面语言,日常操作会更直观。

如果家里有多人需要使用,可以新增账号,再按各自需要设置访问目录和读写权限。比如共享资料可安排为只读,私人资料则不应对其他账号可见。官方部署文档也提醒:启用自助注册前要检查新用户的默认 scope,避免新账号直接获得根目录的操作权限。

最后修改初始管理员密码。原始随机密码不好记,并不意味着应该换成简单口令;建议使用长度足够的独立密码,避免与 NAS 管理员密码重复。公网访问前也应确认是否开放分享或注册,以及能否通过权限策略收紧管理范围。

5. 安装 cpolar:从局域网访问过渡到远程访问

到这里,本地文件管理已经可以使用。它解决的是“通过网页管理指定目录”;如果我在外出时需要访问,还要再解决连接问题。cpolar 在这里承担的是网络入口的角色,将 NAS 上的 8080 端口映射为可访问的公网地址,并不替代 File Browser 的账号和文件权限。

先连接到飞牛 OS 的终端,按原文安装命令操作:

sudocurlhttps://get.cpolar.sh|sh

安装后查看 cpolar 的服务状态。

sudosystemctl status cpolar

如果服务已经正常运行,就在同一局域网的浏览器打开http://飞牛NAS局域网IP:9200,用 cpolar 账号登录 Web 管理界面。只有在浏览器本身就在安装 cpolar 的那台设备上时,localhost:9200才指向正确机器;从别的电脑访问要使用 NAS IP。

6. 创建随机公网地址:先验证链路是否通畅

在 cpolar 的“隧道管理”中创建一条指向 File Browser 的 HTTP 隧道。本文沿用原图参数:隧道名用FileBrowser作示例,本地地址填8080,域名类型先选“随机域名”,地区选China Top。隧道名不能与自己已有名称重复。

创建后进入“状态 → 在线隧道列表”,找到对应的公网访问地址。优先使用 HTTPS 地址,并从另一网络环境测试:先确认登录页能打开,再用正确账号登录、查看指定目录和上传下载一份无敏感内容的测试文件。只看到登录页,不等于文件权限、上传或分享功能都验证成功。

远程验证后仍要保留 File Browser 自身登录。公网隧道是连接通道,不应被理解为“自动加上所有安全防护”;建议关闭不需要的自助注册、限制目录范围,并根据可用功能配置额外访问认证。

7. 保留固定二级子域名:减少地址变化带来的麻烦

随机地址适合短期测试;如果想把地址保存在手机书签里,固定二级子域名更方便。这一步取决于 cpolar 账号当前支持的套餐和域名权限,不能将“地址固定”理解为服务不受关机、断网或套餐变化影响。

在 cpolar 控制台进入“预留 → 保留二级子域名”,按页面填写地区、子域名和备注。原文示例使用FileBrowser作为名称,实际以账号成功预留的名称为准。

接着回到本地 cpolar Web UI,在“隧道管理 → 隧道列表”找到刚才的隧道,点击编辑。

将域名类型改为“二级子域名”,在Sub Domain中填写已经预留成功的名称,地区与预留时保持一致,再点击更新。

更新后查看在线隧道列表,确认地址已从随机形式变成固定二级子域名。

最后用手机移动网络或异地电脑打开对应的 HTTPS 地址,按 File Browser 的账号权限完成登录与文件操作验证。日常使用时还应定期备份db、config及重要文件,并保持 Docker 镜像与 NAS 系统更新。

总结

对我来说,File Browser 最实用的地方不是把 NAS 变成另一个商业云盘,而是给自己存放的资料增加一个清楚、独立的浏览器入口。这次在飞牛 OS 上完成了目录准备、容器部署、初次登录、文件上传和用户管理,再通过 cpolar 做了随机地址与固定二级子域名配置,手机和电脑都可以按账号权限访问相应目录。

真正需要长期维护的,是文件挂载、用户权限、初始密码和备份,而不只是把页面打开。外网访问建议使用 HTTPS,并把 File Browser 目录范围控制在确实需要共享的部分。这样下次人在外面临时找资料时,操作更方便,数据仍由自己的 NAS 保存和管理。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/30 5:50:33

WorkBuddy AI工作台实战:从安装配置到Skill开发与缓存迁移避坑指南

1. 为什么我要认真聊聊 WorkBuddy 这个 AI 工作台第一次接触 WorkBuddy 是在一个做企业数字化的朋友那里。他当时丢给我一句话:“你把它当成一个能自己动手干活的 AI 同事,而不是一个只会聊天的机器人。”这句话基本概括了 WorkBuddy 的定位——腾讯推出…

作者头像 李华
网站建设 2026/9/30 5:50:33

政务信创改造避坑指南!4款主流云桌面优缺点全方位拆解

政务数字化转型迈入深度落地阶段,政务信创办公已经成为各级党政机关信息化升级的核心工作。现阶段多数政务单位在信创改造中,普遍面临软硬件适配不兼容、分散终端难以统一管控、内部数据安全防护薄弱、老旧办公设备无法复用等诸多实操难题。如何在严格契…

作者头像 李华
网站建设 2026/9/30 5:49:58

实验二:标准外设库方式流水灯与Keil仿真

一、实验目的 掌握STM32标准外设库(SPL)的工程搭建与GPIO库函数用法;用标准外设库实现LED轮流闪烁;使用Keil软件仿真逻辑分析仪观察GPIO输出波形,分析闪烁周期。二、实验硬件元件引脚说明红色LEDPA0高电平亮蓝色LEDPA2…

作者头像 李华
网站建设 2026/9/30 5:49:12

Windows环境变量配置指南:Path、JAVA_HOME与多版本切换

上个月帮同事看一台新装的开发机,命令行敲java -version直接甩回一句"不是内部或外部命令",他盯着屏幕上明明已经装好的 JDK 一脸茫然。这种场景我在 Windows 上见过太多次了——软件装完了,就是跑不起来,八成是环境变量…

作者头像 李华
网站建设 2026/9/30 5:48:40

RAG文本分块全解析:策略选择与工程调优实战指南

上周在处理一个RAG项目时,客户反馈检索效果始终不理想。换过embedding模型、调过召回阈值、重排逻辑也改了三版,效果始终差一口气。排查到最后才发现,问题根源既不在向量化,也不在检索链路,而是卡在了一个绝大多数团队…

作者头像 李华
网站建设 2026/9/30 5:48:40

操作系统文件管理核心考点:从概念到计算题的全梳理

期末复习到操作系统,大家最头疼的往往不是进程管理,就是文件管理。进程管理好歹讲的是“动态”的东西,顺着状态转换还能推;文件管理一上来就是文件、目录、FCB、索引结点、位示图、成组链接,概念又多又碎,算…

作者头像 李华