一开始我是在自己写PDF功能,都已经写出来一个转图片的功能了,但是想起了Stirling-PDF,然后就看了下,果断安装Stirling-PDF,方便多了。
因为刚好有一台安装了宝塔的闲置服务器,安装Stirling-PDF够用了。
先自行在后台安装Docker服务。
安装好了,就可以安装Stirling-PDF服务了。
创建安装文件:docker-compose.yml
mkdir -p /www/wwwroot/StirlingPDF && cd /www/wwwroot/StirlingPDF
按照你自己习惯的路径来,我是看见这个路径的文件夹下有个其他程序,就放这里了。
配置安装文件docker-compose.yml:
nano /www/wwwroot/StirlingPDF/docker-compose.yml
填写:
version: '3.3' services: stirling-pdf: image: stirlingtools/stirling-pdf:latest container_name: stirling-pdf ports: - '8088:8080' restart: unless-stopped volumes: - /www/wwwroot/StirlingPDF/trainingData:/usr/share/tessdata # Required for extra OCR languages - /www/wwwroot/StirlingPDF/extraConfigs:/configs - /www/wwwroot/StirlingPDF/customFiles:/customFiles/ - /www/wwwroot/StirlingPDF/logs:/logs/ - /www/wwwroot/StirlingPDF/pipeline:/pipeline/ environment: - DOCKER_ENABLE_SECURITY=false - INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false
内地服务器不要用官方的完整示例,可能有网络问题安装不了,所以用这个。
防止和其他端口冲突,可以改个端口8088,如果没有冲突,默认8080也行。
进入docker-compose.yml 所在目录进行安装:
cd /www/wwwroot/StirlingPDF docker-compose up -d
等安装流程走完,然后先停用。
docker compose down
得先安装下OCR包,不然有的转换功能用不了。
apt install git -y cd trainingData rm -rf * git clone https://github.com/tesseract-ocr/tessdata_fast.git /www/wwwroot/StirlingPDF/trainingData
也就是进trainingData删掉里面可能有的内容,然后再安装tesseract-ocr包。
上面安装好了,去开放服务器的8088端口,反正就是开放你这个程序的端口。
然后启动docker服务:
docker compose up -d
现在访问: ip:8088 (你的端口)
应该就能看见Stirling-PDF的界面了。
其他配置:
编辑Stirling-PDF配置文件:
nano /www/wwwroot/StirlingPDF/extraConfigs/settings.yml
语言默认改成中文:
defaultLocale: zh_CN
标题描述配置:
appName: 无忌PDF - 免费的PDF在线处理工具 # application's visible name homeDescription: 免费的PDF多功能处理工具 # short description or tagline shown on the homepage appNameNavbar: 无忌PDF # name displayed on the navigation bar
根据你自己的来改。
保存之后再次重启:
docker restart stirling-pdf 也可以: docker compose down docker compose up -d
自定义配置:
在StirlingPDF/customFiles这个文件夹,加入自己的HTML文件进行调用就行。
要更新:
docker-compose pull docker-compose up -d
基础就完事了:
可以参考我搭建的:pdf.wujiit.com
用域名代理访问:
在宝塔创建一个网站,前面走正常的创建网站流程就行,然后修改配置文件:
location / { proxy_pass http://127.0.0.1:8088/; # 改成你的端口 proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; }
然后就可以通过域名访问了,如果要禁止ip加端口访问,去服务器配置下防火墙端口的权限即可。
参考:
https://docs.stirlingpdf.com/Installation/Docker%20Install
https://github.com/Stirling-Tools/Stirling-PDF/issues/2150