【开源项目】想搞个“全能 PDF 工具箱”?Stirling-PDF 一篇部署教程搞定
〇、写在前面:为什么选 Stirling-PDF?
如果你已经厌倦了:
- 每次想合并、拆分、加水印,都要去搜“免费 PDF 在线工具”
- 用了几个所谓免费的网站,结果要么强制关注公众号,要么偷偷给 PDF 加上自己的水印,要么直接限制页数
- 担心把公司的合同、带隐私的文档传到第三方平台,存在数据泄露的风险
那这篇教程就是给你写的。
我们今天的主角:Stirling-PDF。
这是一个顶级开源 PDF 工具箱,主打「100% 本地化处理,上传的文件绝不离开你的服务器」
功能极其逆天:合并、拆分、压缩、格式转换(Word/Excel/PPT转PDF)、加/解密、加水印、甚至自带 OCR 识别
界面非常现代化,没有任何广告,操作体验吊打市面上 90% 的付费软件
GitHub 上 45k+ Star,常年霸榜 Trending,算是目前开源界最强悍的文档处理神器
接下来就按:选服务器 → 装 Docker → 写个配置文件 → 启动容器 → 浏览器打开即用 的完整流程,一步步来。
一、选服务器与配置推荐(有云服务器的可以跳过)
1. 注册 & 领优惠券(有服务器的直接跳过)
这里我用的是「雨云」服务器,官网:https://www.rainyun.com/(不是广告,只是我常用)。
新用户注册可以用我的优惠码:techaser
绑定微信后会自动发一张首月 5 折券,积分商城也有永久八折券,同时我也有一点收益,感谢支持~
2. 配置建议
这个项目相比 AI 类的项目,那叫一个「轻量」:
- CPU ≥ 1 核
- 内存 ≥ 2 GB(建议 4G,因为 OCR 功能稍微吃点内存)
- 硬盘 ≥ 20 GB(处理的 PDF 文件需要临时存储空间)
- Docker ≥ 19.03+
小贴士:
- 纯自己偶尔用用:雨云最便宜的 1C2G 轻量机完全够跑
- 想给团队十几个人一起用、经常处理几百页的大 PDF:建议 2C4G
地域选择:(雨云目前由于运营商限制,只有海外机能够试用了)
- 想免备案、直接用 IP 访问:选香港节点
- 有备案、面向国内:选国内节点(比如宿迁、宁波等)
二、服务器环境准备:安装 Docker & Docker Compose
如果你已经装好了 Docker 和 Docker Compose(雨云购买时可以自己选装),直接跳到「三、创建目录并编写 Docker Compose 文件」。
1. SSH 连接服务器
本地终端(Windows 可以用 PowerShell / Terminal / Xshell):
ssh root@你的公网IP
2. 安装 Docker(以 CentOS / Rocky / Alma 为例)
# 安装必要工具
yum install -y yum-utils
# 添加 Docker 官方源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker & Docker Compose 插件
yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 启动并设置开机自启
systemctl enable --now docker
装完验证一下:
docker --version
docker compose version
能看到版本号就说明 OK。
Ubuntu / Debian 的命令略有不同,这里就不展开了,按自己系统查一下就行。
三、创建目录 & 编写 Docker Compose 文件
Stirling-PDF 的部署极其简单,不需要像 AI 项目那样拉一堆乱七八糟的依赖,连克隆源码都省了,直接手写一个 docker-compose.yml 就行。
1. 创建工作目录
mkdir -p /opt/stirling-pdf
cd /opt/stirling-pdf
2. 编写配置文件
用 vim 或 nano 创建一个 docker-compose.yml 文件:
vim docker-compose.yml
粘贴以下内容(这是官方推荐的带持久化挂载的版本):
version: '3.8'
services:
stirling-pdf:
image: frooodle/s-pdf:latest
container_name: stirling-pdf
ports:
- "8080:8080" # 左边是服务器端口,被占用可以改成 9090:8080
volumes:
- ./trainingData:/usr/share/tessdata # OCR 语言包存放目录(持久化)
- ./configs:/configs # 配置文件目录
- ./logs:/logs # 日志目录
- ./customFiles:/customFiles # 自定义文件(比如自定义字体等)
environment:
- DOCKER_ENABLE_SECURITY=false # 关闭登录验证(下面会细说)
- SECURITY_ENABLE_LOGIN=false # 不需要账号密码
restart: always
关于 SECURITY_ENABLE_LOGIN 的说明:
默认情况下,新版 Stirling-PDF 是开启了安全登录的(需要注册账号才能用)。如果你是自己用或者内网用,觉得登录太麻烦,加上上面两句环境变量就能「打开即用」。
如果你是公网部署,建议去掉这两句(或者设为 true),保留登录功能防止被白嫖算力。
四、启动 Stirling-PDF
1. 一键拉起服务
在 /opt/stirling-pdf 目录下执行:
docker compose up -d
因为是单容器,而且镜像打包得很好,拉取速度通常很快(大概 1 GB 左右,国内需要设置镜像源,香港不用)。喝口水,等它跑完。
2. 看看启动日志
docker logs -f stirling-pdf
看到日志里出现类似 Started Application in xxx seconds 或者持续有 Spring Boot 的运行日志输出,就说明启动成功了。
按 Ctrl + C 退出日志查看。
五、浏览器打开 & 体验
1. 访问地址
因为我们映射的是 8080 端口:
本机部署:http://localhost:8080
服务器部署:http://你的服务器IP:8080
如果在 docker-compose.yml 里改成了 9090:8080,就访问 http://你的服务器IP:9090
2. 首次打开(重点!)
和前面那些 AI 项目不一样,如果你按我上面的配置关掉了登录验证:
没有注册、没有登录、没有广告
打开网址直接就是清爽的工具首页,可以立刻开始操作
如果你没关登录验证,第一次打开会让你设置一个管理员账号,按提示注册登录即可。
安全提醒:如果你是公网部署且没关登录,记得在后台设置里把「开放注册」关掉,自己注册一个管理员账号就行,别让别人乱用你的服务器 CPU。
3. 切换中文
界面默认是英文,但支持多语言:
在页面左上角或者右上角找到语言切换按钮(通常是个地球图标或者 EN 字样)
选择「简体中文」,整个界面瞬间变成母语,极其舒服。
六、基础使用:体验几个杀手级功能
登录进去后,你会看到功能多到眼花缭乱,我挑几个最常用的说一下:
1. PDF 格式转换(比如 Word 转 PDF)
在首页找到「Office 转 PDF」
拖拽上传你的 .docx 或 .xlsx 文件
点击转换,几秒钟后直接下载。完全不需要装 Microsoft Office!
2. OCR 图片文字识别(非常实用)
找到「OCR(光学字符识别)」功能
上传一张带文字的图片或扫描版 PDF
选择语言(如果是中文,选 chi_sim 简体中文)
注意: 第一次使用 OCR 时,程序会自动去下载中文语言包(大概十几 MB),因为我们在 Docker 里挂载了 ./trainingData 目录,所以下载一次后就会永久保存在服务器里,以后再用就是秒识别。
3. 给 PDF 加水印 / 页码
找到「添加水印」功能
上传 PDF
输入你要加的水印文字(比如:内部机密)
调整透明度、旋转角度,一键生成。
4. PDF 合并与拆分
最基础但最常用的功能,支持拖拽排序合并,或者按页码范围精准拆分,速度极快。
到这里,你已经:
- 用极低的成本(1C2G 轻量机就行)跑起了 Stirling-PDF
- 摆脱了所有第三方 PDF 网站的恶心限制和隐私担忧
- 拥有了一个可以分享给全公司同事使用的永久免费工具站
接下来你可以:
- 套个域名:在服务器上装个 Nginx,反代 8080 端口,绑个类似 pdf.yourdomain.com 的域名,看起来更正规
- 分享给团队:把网址丢到公司群里,告诉大家“以后转 PDF、搞水印别去百度搜了,直接用这个”
- 配合其他工具:比如在 n8n 或 Dify 的工作流里,通过 API 调用 Stirling-PDF 实现自动化文档处理(它自带完整的 REST API)
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)