Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具

简介: Stirling-PDF 是一款基于 Docker 的本地化 PDF 编辑工具,支持 50 多种 PDF 操作,包括合并、拆分、转换、压缩等,同时提供多语言支持和企业级功能,满足个人和企业用户的多样化需求。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦


🛡️ “还在用WPS处理敏感文件?这个开源神器把PDF工作站搬进你电脑:50+功能全免费,数据不出本地!”

大家好,我是蚝油菜花。你是否经历过——

  • 🚨 公司合同上传第三方工具,冷汗直冒怕泄密
  • 🚨 在线PDF转换器突然收费,多年文档被绑架
  • 🚨 急需调整PDF页序时,发现所有工具都要注册...

今天介绍的 Stirling-PDF ,用开源力量重塑文档安全!这个基于Docker的本地化PDF工具箱,集合合并/拆分/OCR/签名等53项专业功能,所有操作在本地内存完成,关闭浏览器即数据蒸发。金融从业者用它处理机密财报,开发者搭建私有文档中台——你的数据主权,早该回归自己手中!

🚀 快速阅读

Stirling-PDF 是一款功能强大的本地化 PDF 编辑工具,支持 50 多种操作和多语言界面。

  1. 核心功能:支持 PDF 合并、拆分、转换、压缩、OCR 等操作,提供自定义流水线和 API 集成。
  2. 技术原理:基于 Docker 部署,利用 LibreOffice 和 Tesseract OCR 等工具实现高效 PDF 处理。

Stirling-PDF 是什么

stirling-home

Stirling-PDF 是一款基于 Docker 的本地化 PDF 编辑工具,专为需要高效处理 PDF 文件的用户设计。它支持 50 多种 PDF 操作,包括合并、拆分、转换、压缩、OCR 等,能够满足个人和企业用户的多样化需求。

Stirling-PDF 的设计注重隐私和安全性,所有文件和 PDF 数据仅在客户端或服务器内存中临时存在,任务完成后会立即删除,确保用户数据的安全性。此外,它还支持多语言界面,目前已支持 39 种语言,覆盖全球大部分用户的需求。

Stirling-PDF 的主要功能

  • PDF 操作:支持合并、拆分、旋转、重新排序、压缩等 50 多种操作。
  • 转换功能:支持 PDF 与图片、Word、HTML、Markdown 等格式的相互转换。
  • 安全功能:支持添加水印、密码保护、权限设置、PDF 签名等。
  • 高级功能:提供 OCR 文字识别、PDF/A 转换、元数据编辑等功能。
  • 企业功能:支持单点登录(SSO)、数据库备份与导入等企业级功能。

Stirling-PDF 的技术原理

  • Docker 部署:基于 Docker 容器化技术,确保跨平台兼容性和易部署性。
  • LibreOffice 集成:利用 LibreOffice 实现 PDF 与其他格式的转换。
  • Tesseract OCR:通过 Tesseract OCR 提供高效的 PDF 文字识别功能。
  • API 支持:提供 API 接口,方便与其他系统集成。

如何运行 Stirling-PDF

Stirling-PDF 提供了 Docker 镜像,方便用户快速部署和运行。本文将详细介绍如何通过 docker rundocker-compose 命令运行 Stirling-PDF 容器,并提供相关配置和参数的说明。

Stirling-PDF 的版本选择

Stirling-PDF 提供了三种不同的版本,分别适用于不同的硬件配置:

版本 最新标签
Fat latest-fat
Standard latest
Ultra Lite latest-ultra-lite
  • Fat:适用于高性能硬件,包含所有功能和语言支持。
  • Standard:标准版本,适用于大多数用户。
  • Ultra Lite:轻量级版本,适合低性能硬件。

如果需要最新功能和更新,建议使用 latest 标签。

1. 使用 docker run 运行容器

以下是通过 docker run 命令运行 Stirling-PDF 容器的示例:

docker run -d \
  --name stirling-pdf \
  -p 8080:8080 \
  -v "./StirlingPDF/trainingData:/usr/share/tessdata" \
  -v "./StirlingPDF/extraConfigs:/configs" \
  -v "./StirlingPDF/customFiles:/customFiles/" \
  -v "./StirlingPDF/logs:/logs/" \
  -v "./StirlingPDF/pipeline:/pipeline/" \
  -e DOCKER_ENABLE_SECURITY=false \
  -e LANGS=en_GB \
  stirlingtools/stirling-pdf:latest

参数解释

  • -d:以后台模式运行容器。
  • --name stirling-pdf:为容器指定名称。
  • -p 8080:8080:将容器的 8080 端口映射到主机的 8080 端口。
  • -v:挂载主机目录到容器中,用于持久化数据。
    • ./StirlingPDF/trainingData:/usr/share/tessdata:挂载 OCR 语言数据目录。
    • ./StirlingPDF/extraConfigs:/configs:挂载额外配置文件目录。
    • ./StirlingPDF/customFiles:/customFiles/:挂载自定义文件目录。
    • ./StirlingPDF/logs:/logs/:挂载日志目录。
    • ./StirlingPDF/pipeline:/pipeline/:挂载流水线文件目录。
  • -e:设置环境变量。
    • DOCKER_ENABLE_SECURITY=false:禁用安全功能(根据需求调整)。
    • LANGS=en_GB:设置支持的语言(例如英式英语)。

2. 使用 docker-compose 运行容器

如果更倾向于使用 docker-compose,可以通过以下配置文件运行 Stirling-PDF 容器。

docker-compose.yml 文件示例

version: '3.3'
services:
  stirling-pdf:
    image: stirlingtools/stirling-pdf:latest
    ports:
      - '8080:8080'
    volumes:
      - ./StirlingPDF/trainingData:/usr/share/tessdata # Required for extra OCR languages
      - ./StirlingPDF/extraConfigs:/configs
      - ./StirlingPDF/customFiles:/customFiles/
      - ./StirlingPDF/logs:/logs/
      - ./StirlingPDF/pipeline:/pipeline/
    environment:
      - DOCKER_ENABLE_SECURITY=false
      - LANGS=en_GB

启动命令

在包含 docker-compose.yml 文件的目录下运行以下命令:

docker-compose up -d

3. 高级配置

如果需要进一步自定义配置,例如添加额外的语言支持或调整流水线配置,可以参考Stirling-PDF 高级配置文档

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦

相关文章
|
3月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
1370 4
|
3月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
181 5
|
4月前
|
存储 Docker Python
docker 部署 sftp
本文介绍SFTP服务的部署与配置,包括users.conf用户配置规则、Docker容器运行命令及上传目录权限说明,重点解析atmoz/sftp镜像的chroot机制与子目录映射,确保用户登录后正确访问/upload目录,并提供Python脚本实现文件上传示例。
358 12
docker 部署 sftp
|
4月前
|
运维 Linux 数据库
基于 Docker 部署 n8n 指南,新手一看就会
本教程详解如何通过 Docker 快速部署开源自动化工具 n8n,适合新手快速上手。内容涵盖官方部署步骤、常见难点及第三方一键部署方案,助你高效搭建自动化工作流平台。
1531 6
|
3月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
1004 7
|
3月前
|
存储 搜索推荐 数据库
🚀 RAGFlow Docker 部署全流程教程
RAGFlow是开源的下一代RAG系统,融合向量数据库与大模型,支持全文检索、插件化引擎切换,适用于企业知识库、智能客服等场景。支持Docker一键部署,提供轻量与完整版本,助力高效搭建私有化AI问答平台。
2427 8
|
3月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
632 4
|
4月前
|
关系型数据库 MySQL Linux
事项驱动的项目管理工具Dectask的Docker安装教程
Dectask是智能驱动的新一代项目协作工具,本人介绍其Docker安装教程。
136 2
|
4月前
|
前端开发 JavaScript 应用服务中间件
在Docker部署的前端应用中使用动态环境变量
以上步骤展示了如何在 Docker 配置过程中处理并注入环墨遁形成可执行操作流程,并确保最终用户能够无缝地与之交互而无须关心背后复杂性。
230 13

热门文章

最新文章