Docker部署一个隐私优先的免费PDF工具箱-BentoPDF
摘要
BentoPDF 是一款基于 WebAssembly 的隐私优先 PDF 工具箱,所有处理均在本地浏览器完成,文件不上传云端,永久免费且无需注册。它功能全面,适合在 NAS 上通过 Docker 轻松部署。使用时需注意受限于浏览器内存,且处理速度取决于客户端设备性能,是处理敏感文档的理想选择。
前言
处理 PDF 几乎是每个人的刚需:合并几个文件、压缩一下体积、转成 Word、拆页、加水印……平时大家多半用在线 PDF 网站(SmallPDF、iLovePDF 之类),但它们有个通病——你得把 PDF 上传到人家服务器。如果是合同、证件、财报这类敏感文档,很多人心里都会犯嘀咕:传到第三方平台安不安全?
正好我一直在挖掘 NAS 的本地功能,就发现了 BentoPDF 这款隐私优先的 PDF 工具箱,它的核心卖点很戳我:所有操作都在你自己的浏览器本地完成,文件从头到尾不离开你的设备。下面先看它的功能特性页:

主要特点
🔒 隐私保护:所有操作都在本地浏览器中完成,文件从未离开设备,数据绝对安全
🚫 无需注册:不用建账户、不用填个人信息,打开就能用
💰 永久免费:所有功能免费,无试用期、无付费墙、无次数限制
🌐 跨平台:Windows、macOS、Linux、iOS、Android 都能用——只要你有现代浏览器
📚 批量处理:一次能处理多个文件,不用一个个来
⚡ 极速处理:本地计算,无需排队等待,处理速度极快
🧠 原理小知识:为什么能"文件不离开设备"?因为 BentoPDF 用的是浏览器端(WASM)技术,把 PDF 处理的核心逻辑打包成能在浏览器里运行的代码,直接在你的 CPU 上跑,而不是发到服务器算。这跟那些"网页版只是套个壳、实际还是上传"的工具是本质区别。
WASM 到底是怎么回事,值得展开讲讲
"浏览器本地处理"这句话现在被用得有点泛滥了——不少在线工具也这么宣传,但点开网络面板一看,文件照样在上传。所以这里教一个一眼识破的办法:
打开工具页面,按 F12 切到 Network(网络) 面板,然后开始处理一个文件。盯着请求列表看:
如果出现一个体积和你文件差不多大的
POST请求 → 它在上传,宣传是假的;如果全程没有大请求,只有首次加载时下载的
.wasm文件 → 真的在本地算。
BentoPDF 属于后者。它把 PDF 解析、页面重组、图像压缩这些逻辑编译成了 WebAssembly——一种浏览器能直接跑的二进制指令格式。你可以理解为:以前必须装在电脑上的软件,现在塞进网页里跑了。
这件事带来的三个实际后果,比"隐私"更值得注意:
算力在你打开页面的那台设备上,不在服务器上。NAS 只负责把网页发给你,真正干活的是你面前这台电脑。
不占服务器带宽,所以没有"上传排队""文件大小限制"这类在线工具的枷锁(限制改由你本机内存决定,见下文)。
首次打开要下载一次 WASM 包(几 MB),之后浏览器会缓存,第二次用就快了。
部署
官方 GitHub:https://github.com/alam00000/bentopdf,依然用 Docker Compose 安装:
保存后 docker compose up -d 启动:

这个镜像非常"轻"——本质上它是个静态站点,容器里跑个 nginx 把网页发出去就完事了。所以你完全不用担心它占资源,NAS 再弱也带得动,因为重活压根不在 NAS 上。
使用
启动后浏览器访问
http://NAS的IP:18080,进入主界面:

默认可能是英文界面,把页面拉到最下面,可以切换成中文,用起来更顺手:

功能非常全面(合并、拆分、压缩、转 Word/图片、加密、加水印、去水印、OCR 等一应俱全),工具太多时不用一个个找,直接在上方搜索框输入功能名就能快速定位:

截一张整页图,感受下它到底覆盖了多少功能:

功能这么多,实际最常用的就四类
功能列表看着唬人,但日常真正高频的其实集中在四类,各自有些门道:
类别 | 典型操作 | 关键点 |
|---|---|---|
整理 | 合并、拆分、删页、旋转、排序 | 纯结构操作,最快、最不容易出问题 |
瘦身 | 压缩、图片降采样、去重字体 | 压缩画质损失不可逆,别在原件上做 |
转换 | PDF→Word / 图片 / 文本,Office→PDF | 排版复杂时还原度会打折,属正常 |
保护 | 加密、加水印、去水印、打码 | 加密后密码丢了救不回来,务必记好 |
一个很实用的组合玩法:先"压缩"再"合并"。因为压缩是逐文件做的,单文件压完再合并,比合并成一个巨型 PDF 再压要省内存,成功率也高得多。
边界与注意:本地处理不等于没有限制
必须把这一节写清楚,否则容易产生"本地处理所以万能"的误解。
① 真正的天花板是你浏览器的内存
WASM 要处理整个文件,就得把它(以及中间产物)读进内存。浏览器标签页的内存上限通常在 1-4 GB 之间,且各浏览器策略不同。换算一下大致是:
一个 200MB 的 PDF,处理时峰值内存可能是文件的 3-5 倍;
页数极多(几千页)或含超高清扫描图时,即使体积不大也容易吃满内存;
一旦超过上限,标签页会直接崩溃(不是慢慢变卡,是白屏重载)。
对策:大文件先拆分成几十 MB 的批次,分几次处理完再合并。这也是"本地处理"唯一的代价。
② 性能取决于你打开页面的设备,不是 NAS
这点跟"服务器算"的工具正好相反。有人会问"我 NAS 是低功耗 ARM,会不会很慢?"——不会,因为 NAS 只是发网页。真正决定快慢的是你面前这台电脑/手机的 CPU。反过来说,用一台老平板去开这个页面处理大文件,就会很吃力。
③ "本地处理"有一个前提:你打开的是真的 BentoPDF
这是最容易被忽略的一点。BentoPDF 官方有演示站,网上也可能有人搭了"看起来一样"的站。只要页面的 JS 被改过,它照样能把你的文件偷偷上传。所以:
优先访问自己 NAS 上部署的地址,链路在内网,最安全;
用官网页时,确认域名正确 + 浏览器地址栏是 HTTPS;
实在谨慎,就把 NAS 的页面收藏好,日常只从收藏夹进。
换句话说:自部署把"信任第三方"这件事,缩减成了"信任自己" —— 这才是它相对在线工具的真价值。
④ OCR 与"去水印"是最容易翻车的两个
OCR:浏览器端的识别模型比服务端的小,对扫描质量差、手写体、竖排中文的识别率明显偏低。要高质量 OCR,还是得用专门的识别服务。
去水印:本质是用周边像素填充,纯色背景效果好,复杂背景会留下明显痕迹。别指望它做出 PS 级的修复。
使用体验与建议
**处理敏感 PDF(合同、证件、财务文件)**时特别安心,因为是本地处理,可以放心地用;不像在线工具还得担心文件被留存。
因为是浏览器本地算,处理超大 PDF 或超高分辨率文件时,性能取决于你浏览 PDF 的那台设备(NAS 只负责提供网页)。如果 NAS 性能弱没关系,换台性能好的电脑浏览器访问它,处理速度就上去了——这点跟"服务器算"的工具不一样。
适合作为内网全员可用的工具站:局域网里任何设备浏览器打开
NAS的IP:18080就能用,不用每台都装软件。
结尾
BentoPDF 的价值在于把"PDF 工具"和"隐私"结合到了一起——既给了你一个功能全面的免费工具箱,又保证了文件不出本机。如果恰好有 NAS,把它部署成一个家庭/办公室内网的 PDF 工具站,随时想用就用,还不用把敏感文档交给第三方,非常划算。
如果你手里还有别类"不想上传云端"的素材——比如带个人信息的产品图、头像照片,需要抠背景又不想传给在线网站,思路完全一样:直接在 NAS 上自部署一个 AI 去除背景工具 就能解决,跟 BentoPDF 属于同一套"本地优先"哲学。
有部署问题或想了解某个具体功能怎么用,欢迎评论区交流。
相关文章
暂无相关文章