【Docker项目实战篇】Docker部署PDF多功能工具Stirling-PDF
- 1.1 Stirling-PDF简介
- 1.2 Stirling-PDF功能
- 2.1 本地环境规划
- 2.2 本次实践介绍
- 3.1 检查Docker服务状态
- 3.2 检查Docker版本
- 3.3 检查docker compose 版本
- 5.1 创建部署目录
- 5.2 编辑部署文件
- 5.3 创建Stirling-PDF容器
- 5.4 查看Stirling-PDF容器状态
- 5.5 查看Stirling-PDF容器日志
- 6.1 访问Stirling-PDF首页
- 6.2 设置系统中文
- 7.1 将word文档转换为PDF文档
- 7.2 PDF转换为word
前言
之前使用Docker部署过Stirling-PDF项目,当时的版本为0.22.2,其中部分功能使用起来可能存在bug。现在该项目已经更新到了0.26.1版本,部分bug得到修复,同时Stirling-PDF界面有了较大变化,更加的美观,现在来体验一下新版本以及功能。
一、Stirling-PDF介绍
1.1 Stirling-PDF简介
Stirling-PDF
:这是一个使用 Docker 的强大的、本地托管的基于 Web 的 PDF 操作工具。它使您能够对 PDF 文件执行各种操作,包括拆分、合并、转换、重新组织、添加图像、旋转、压缩等。这个本地托管的 Web 应用程序已经发展到包含一套全面的功能,可以满足您的所有 PDF 需求。
1.2 Stirling-PDF功能
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为Ubuntu 22.04.1。
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署PDF多功能工具Stirling-PDF。
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
root@ubuntu-docker:~# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2024-06-21 16:45:29 UTC; 9h ago TriggeredBy: ● docker.socket Main PID: 3625 (dockerd) Tasks: 12 Memory: 26.0M CPU: 3.367s CGroup: /system.slice/docker.service
3.2 检查Docker版本
检查Docker版本
root@ubuntu-docker:~# docker -v Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
root@ubuntu-docker:~# docker compose version Docker Compose version v2.19.1
四、下载Stirling-PDF镜像
使用本人的阿里云私人镜像仓库下载Stirling-PDF镜像registry.cn-hangzhou.aliyuncs.com/jeson/s-pdf:0.26.1-fat
root@ubuntu-docker:~# docker pull registry.cn-hangzhou.aliyuncs.com/jeson/s-pdf:0.26.1-fat 0.26.1-fat: Pulling from jeson/s-pdf d25f557d7f31: Pull complete c1f8f1be6b13: Pull complete 1f66901a7ce5: Pull complete 64608eef7b1e: Pull complete b3900a49ca85: Pull complete cea40baf48ce: Pull complete Digest: sha256:67ee927cc5b499e32164c25cad5197e9226ced31d319282a7a346b912063909c Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/jeson/s-pdf:0.26.1-fat registry.cn-hangzhou.aliyuncs.com/jeson/s-pdf:0.26.1-fat
五、部署Stirling-PDF
5.1 创建部署目录
创建部署目录
mkdir -p /data/s-pdf && cd /data/s-pdf
5.2 编辑部署文件
在
/data/s-pdf
目录,创建docker-compose.yaml文件,内容如下,其中宿主机映射端口、登录账号密码等可以自定义配置。
version: '3.9' services: stirling-pdf: image: registry.cn-hangzhou.aliyuncs.com/jeson/s-pdf:0.26.1-fat container_name: Stirling-PDF ports: - '6080:8080' volumes: - /data/s-pdf/trainingData:/usr/share/tessdata # OCR 语言支持 - /data/s-pdf/extraConfigs:/configs - /data/s-pdf/customFiles:/customFiles/ - /data/s-pdf/logs:/logs/ environment: DOCKER_ENABLE_SECURITY: true # 启用内部安全功能 SECURITY_ENABLELOGIN: true # 启用登录功能 SECURITY_INITIALLOGIN_USERNAME: jeven # Stirling-PDF登录账号 SECURITY_INITIALLOGIN_PASSWORD: jeven # Stirling-PDF登录密码 UI_APPNAME: jeven-PDF # 自定义导航标题 INSTALL_BOOK_AND_ADVANCED_HTML_OPS: false LANGS: zh_CN # 设置语言
5.3 创建Stirling-PDF容器
执行以下命令,创建Stirling-PDF容器。
root@ubuntu-docker:/data/s-pdf# docker compose up -d [+] Running 2/2 Network s-pdf_default Created 0.0s Container Stirling-PDF Started 0.3s
5.4 查看Stirling-PDF容器状态
检查Stirling-PDF容器状态状态,确保Stirling-PDF容器正常启动。
[root@ubuntu-docker:/data/s-pdf# docker compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS Stirling-PDF registry.cn-hangzhou.aliyuncs.com/jeson/s-pdf:0.26.1-fat "tini -- /scripts/in…" stirling-pdf 58 seconds ago Up 57 seconds 0.0.0.0:6080->8080/tcp, :::6080->8080/tcp
5.5 查看Stirling-PDF容器日志
检查Stirling-PDF容器日志,确保Stirling-PDF服务正常运行。
docker compose logs
在这里插入图片描述
在这里插入图片描述
六、访问PDF多功能工具Stirling-PDF
6.1 访问Stirling-PDF首页
访问地址:,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。
6.2 设置系统中文
在登录页,选择系统语言为简体中文,账号密码为我们在部署文件中自定义的,登录即可。
七、Stirling-PDF工具的基本使用
7.1 将word文档转换为PDF文档
点击菜单栏中的
转换成PDF
模块,选择将“将文件转换为PDF文件”。
选择文件,点击转化为PDF。
转换成功后,浏览器会自动下载到本地。
测试将转换后的pdf文档打开,浏览正常。
7.2 PDF转换为word
点击菜单栏中的
从PDF转换
模块,选择"PDF转换为word"。
上传文件,点击“转换”。
PDF文件会转换成word文件,浏览器自动下载到本地。
打开下载到本地的word文件,浏览文件内容。
八、总结
Stirling-PDF是一款功能强大的PDF工具。最新版本修复了以前版本中的一些bug,并且有更美观漂亮的界面,使用起来更加流畅。它是一款非常优秀的PDF工具,可以极大地提高我们的工作效率。我已经将它部署到本地个人工具库中了。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
,