一键部署 Web 文件管理:Docker 跑 File Browser:浏览器传文件
在服务器上进行文件传输与删除操作时,若不想反复使用SFTP或scp指令,File Browser作为一款开源的Web文件管理器,只需执行一次docker run即可运行,用户在浏览器内便能上传、下载、重命名文件,且所有数据均存储于自有磁盘中。下文围绕File Browser的Docker部署展开,涵盖镜像拉取、一键启动、密码读取与基础操作步骤,并附有7张实测截图,供零基础用户参考。
本文基于 filebrowser/filebrowser:v2.63.17-s6 镜像(实测版本 2.63.17),Ubuntu 24.04 服务器实测
无需安装FTP客户端,仅需一条docker run指令启动服务,即可通过浏览器传输文件。本文将从轩辕镜像拉取开始,指导完成File Browser的单命令Docker部署:包括docker run一键启动、从日志中获取admin随机密码,以及在Web界面新建文件夹、上传文档、预览与下载,全程零基础可跟随操作。
一、File Browser 是什么?
File Browser是一款开源的自托管Web文件管理器,可在指定目录内提供完整的文件操作功能。其核心能力如下:
| 能力 | 说明 |
|---|---|
| Web 管理 | 在浏览器内完成上传、下载、重命名、删除及文件预览 |
| 多用户 | 支持创建多个用户,每个用户可绑定独立目录与操作权限 |
| 轻量部署 | 采用单个Go二进制文件,Docker镜像大小约44MB;配置与用户数据存储在SQLite数据库中 |
| 两种镜像 | 官方提供Alpine裸镜像与S6 Overlay镜像,本文使用后者 |
典型使用场景包括:VPS或NAS远程文件传输(替代SFTP)、小团队共享静态资源目录、开发机内网文件交换,数据不经过第三方网盘。
二、环境要求
| 项目 | 建议 |
|---|---|
| 操作系统 | Linux(本文使用 Ubuntu 24.04) |
| Docker | 已安装 Docker 与 Docker Compose V2 |
| 内存 | ≥ 256 MB(空闲内存约 30~50 MB) |
| CPU | 单核即可 |
| 磁盘 | ≥ 500 MB(包括镜像、数据库及待管理文件) |
| 端口 | 8080(宿主机映射,容器内监听 80) |
验证Docker:
docker --version
docker compose version
若尚未安装Docker,可使用一键安装脚本:
bash <(wget -qO- https://xuanyuan.cloud/docker.sh)
三、拉取镜像并一键启动
本文使用S6 Overlay镜像(标签含 -s6),需挂载三个目录并设置 PUID / PGID 以匹配宿主机文件权限。
3.1 创建数据目录
sudo mkdir -p /www/wwwroot/filebrowser/{ srv,database,config}
sudo chown -R $USER:$USER /www/wwwroot/filebrowser
cd /www/wwwroot/filebrowser
| 宿主机目录 | 容器内路径 | 用途 |
|---|---|---|
srv/ | /srv | 文件根目录(Web 界面管理的所有文件) |
database/ | /database | 存放 filebrowser.db(用户与权限数据) |
config/ | /config | 存放 settings.json(站点配置) |
3.2 拉取镜像
docker pull docker.xuanyuan.run/filebrowser/filebrowser:v2.63.17-s6
| 官方镜像 | 轩辕镜像加速拉取 |
|---|---|
filebrowser/filebrowser:v2.63.17-s6 | docker pull docker.xuanyuan.run/filebrowser/filebrowser:v2.63.17-s6 |
3.3 启动 File Browser
docker run -d --name filebrowser --restart unless-stopped -p 8080:80 -v /www/wwwroot/filebrowser/srv:/srv -v /www/wwwroot/filebrowser/database:/database -v /www/wwwroot/filebrowser/config:/config -e PUID=$(id -u) -e PGID=$(id -g) docker.xuanyuan.run/filebrowser/filebrowser:v2.63.17-s6
各参数说明如下:
| 配置 | 说明 |
|---|---|
-p 8080:80 | 宿主机 8080 端口映射容器内 80 端口 |
-v ...:/srv | 持久化待管理的文件目录 |
-v ...:/database | 持久化 SQLite 数据库文件 |
-v ...:/config | 持久化站点配置文件 |
PUID / PGID | 与宿主机 UID/GID 保持一致,避免文件权限问题 |
v2.63.17-s6 | 固定版本号,使用 S6 初始化(实测版本 2.63.17) |
--restart unless-stopped | 宿主机重启后自动启动容器 |
3.4 验证启动
docker logs filebrowser
成功启动时终端输出类似(Ubuntu 24.04 实测):
2026/06/29 13:18:38 Using config file: /config/settings.json
2026/06/29 13:18:38 WARNING: filebrowser.db can't be found. Initialing in /database/
2026/06/29 13:18:38 Using database: /database/filebrowser.db
2026/06/29 13:18:38 Performing quick setup
2026/06/29 13:18:38 User 'admin' initialized with randomly generated password: nhGDwQZh2GRG1AzM
2026/06/29 13:18:39 Listening on [::]:80
需关注以下信息:
randomly generated password: 后面即为admin初始密码(每次全新部署随机生成,请以实际日志为准)。Listening on [::]:80 表示Web服务已准备就绪。
curl -I http://127.0.0.1:8080
docker ps | grep filebrowser
应返回HTTP 200 或 302。首次启动后,config/settings.json 与 database/filebrowser.db 会自动创建。
四、浏览器首次使用
4.1 登录
在浏览器中打开(将IP替换为你的服务器地址):
http://你的服务器IP:8080
用户名为 admin,密码使用第三节日志中的随机字符串。

图 1:登录页,用户名 admin,密码来自 docker logs
4.2 登录后主界面
登录成功后进入文件管理主界面。左侧显示导航区域(My files、New folder、Settings 等);若 /srv 目录为空,中间区域显示「It feels lonely here...」。

图 2:主界面,左下角显示版本 File Browser 2.63.17
4.3 新建文件夹
点击左侧 New folder,输入文件夹名称(实测名称 testuploadfile),然后点击 CREATE。

图 3:新建文件夹弹窗
创建成功后,根目录下将显示该文件夹(与宿主机 srv/testuploadfile/ 目录对应)。

图 4:根目录下已显示 testuploadfile 文件夹
4.4 上传文件
进入 testuploadfile 文件夹,点击顶部 Upload 图标,选择 File 或 Folder 进行上传。

图 5:上传弹窗,可选 File 或 Folder
实测上传 验收测试报告模板.docx(约 27.46 KiB),上传完成后文件卡片出现在 Files 区域。

图 6:docx 文件已上传,宿主机 srv/testuploadfile/ 目录同步可见
日常用法速记:
顶部工具栏支持 下载、删除、重命名、移动、复制。顶部 Search 功能可按文件名检索。支持 网格 / 列表 视图切换。手机浏览器访问同一地址即可实现跨设备文件管理。
4.5 预览与下载
点击文件名进入预览页面。Office 文档(如 .docx)在浏览器中无法内嵌预览,会提示「Preview is not available for this file.」,此时可点击 DOWNLOAD 进行下载或选择 OPEN FILE 在新标签页中打开。
图 7:docx 不支持内嵌预览,可下载或打开
图片、PDF、文本等格式通常可直接在浏览器内预览。
五、生产环境简要说明
个人试用阶段,使用第三节的单个容器 docker run 命令即可。长期运行建议改用 Docker Compose,并结合 Nginx 或 Caddy 实现反向代理与 HTTPS,同时定期备份 database/(包含 filebrowser.db)及 config/、srv/ 目录。
Compose 最小示例:
services:
filebrowser:
image: docker.xuanyuan.run/filebrowser/filebrowser:v2.63.17-s6
container_name: filebrowser
restart: unless-stopped
ports:
- "8080:80"
volumes:
- ./srv:/srv
- ./database:/database
- ./config:/config
environment:
PUID: 1000 # 改为 id -u 的实际值
PGID: 1000 # 改为 id -g 的实际值
TZ: Asia/Shanghai
cd /www/wwwroot/filebrowser
docker compose up -d
镜像标签 v2.63.17-s6 为 S6 版固定版本(实测 2.63.17),不建议生产环境使用 latest。生产环境应遵循最小权限挂载原则,避免将整个 / 目录暴露给Web服务。
六、常见问题 FAQ
问题1:8080 端口被占用怎么办?
将 -p 8080:80 改为 -p 8095:80,然后通过 http://服务器IP:8095 访问即可。
问题2:忘记 admin 密码怎么办?
初始密码仅在首次启动的日志中出现。如果密码丢失且未修改,可停止容器后删除 database/filebrowser.db 文件以重新初始化(将丢失用户与权限配置),然后再次执行第三节的 docker run 命令并查看新日志。建议首次登录后立即修改密码。
问题3:上传文件后宿主机看不到怎么办?
检查 -v 挂载路径是否正确,以及 PUID/PGID 是否与目录所有者一致。可使用 docker inspect filebrowser 查看 Mounts 信息。
问题4:数据存储在哪里?
宿主机目录 /www/wwwroot/filebrowser/srv 存储文件,database/ 存储账户与权限信息,config/ 存储站点配置。删除这些目录会导致全部数据丢失。
问题5:如何升级 File Browser?
docker pull docker.xuanyuan.run/filebrowser/filebrowser:v2.63.17-s6
docker stop filebrowser && docker rm filebrowser
# 再执行第三节 docker run(srv / database / config 卷不变)
问题6:容器启动后浏览器无法访问?
依次进行以下检查:确认 docker ps 容器状态是否为 Up;查看 docker logs filebrowser 是否有错误信息;在本机执行 curl -I http://127.0.0.1:8080 验证是否连通;检查云服务器安全组或防火墙是否放行了 8080 端口。
七、命令速查
| 操作 | 命令 |
|---|---|
| 拉取镜像 | docker pull docker.xuanyuan.run/filebrowser/filebrowser:v2.63.17-s6 |
| 快速启动 | docker run -d --name filebrowser --restart unless-stopped -p 8080:80 -v /www/wwwroot/filebrowser/srv:/srv -v /www/wwwroot/filebrowser/database:/database -v /www/wwwroot/filebrowser/config:/config -e PUID=$(id -u) -e PGID=$(id -g) docker.xuanyuan.run/filebrowser/filebrowser:v2.63.17-s6 |
| 查看日志(读 admin 密码) | docker logs filebrowser |
| 健康检查 | curl -I http://127.0.0.1:8080 |
| Web 访问 | http://服务器IP:8080 |
| 停止服务 | docker stop filebrowser && docker rm filebrowser |
总之,File Browser 实现了私有化 Web 文件管理,其镜像约 44MB,一条命令即可部署。使用轩辕镜像加速拉取 filebrowser/filebrowser:v2.63.17-s6,执行 docker run 映射 8080 端口并持久化 srv、database、config 三个目录,通过 docker logs 读取 admin 随机密码,即可在浏览器中登录并完成建文件夹、上传文件等操作。长期运行可切换至 Compose 方式,配合备份与反向代理实现 HTTPS 访问。