• Linux本地部署开源AI的PDF工具—Stirling PDF并实现公网随时访问



    本篇文章我们将在Linux上使用Docker在本地部署一个开源的PDF工具——Stirling PDF,并且结合cpolar的内网穿透实现公网随时随地访问。

    Stirling PDF一个强大的本地托管的基于Web的PDF操作工具,使用Docker,允许您对PDF文件执行各种操作,如分割、合并、转换、重组、添加图片、旋转、压缩等。这个本地托管的Web应用程序最初是一个100%由ChatGPT制作的应用程序,现在已经发展到包含了一系列的功能,以满足您所有的PDF需求。

    1. 安装Docker

    本文演示环境:CentOS7,Xshell7远程ssh

    没有安装Docker的小伙伴需安装Docker,已有Docker可跳过以下步骤。

    如没有安装Docker,需先安装Docker:

    • 安装软件包(提供实用程序)并设置存储库

      $ sudo yum install -y yum-utils
      $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
      
      • 1
      • 2

      安装Docker引擎

      sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
      
      • 1

      启动Docker

      sudo systemctl start docker
      
      • 1

      通过运行映像来验证 Docker 引擎安装是否成功

      sudo docker run hello-world
      
      • 1

    2. 本地安装部署StirlingPDF

    检查Docker服务是否正常运行

    systemctl status docker
    
    • 1

    检查Docker版本

    docker -v
    
    • 1

    检查Docker compose版本

    docker compose version
    
    • 1

    在docker hub下载Stirling-PDF镜像

    docker pull   frooodle/s-pdf:latest
    
    • 1

    image-20240312222816334

    使用docker-cli快速创建Stirling-PDF容器

    image-20240312222947052

    检查Stirling-PDF容器状态状态,确保Stirling-PDF容器正常启动

    docker ps
    
    • 1

    image-20240312223151827

    检查Stirling-PDF容器日志,确保Stirling-PDF服务正常运行

    docker logs stirling-pdf
    
    • 1

    image-20240312223535039

    本地访问地址:192.168.149.143:8380,将IP替换为自己服务器IP地址

    image-20240312223813221

    语言切换:点击“地球”形状小图标,点击简体中文即可

    image-20240312224347941

    image-20240312224451561

    3. Stirling-PDF功能介绍

    Stirling-PDF还有很多功能,比如:合并/拆分/旋转/移动PDF及其页面的完全交互式GUI、将多个 PDF 合并到一个生成的文件中、将 PDF 拆分为多个文件,并按指定的页码或将所有页面提取为单个文件、将PDF转换为Word/Powerpoint/Others等,接下来举两个常用功能。

    将word文档转换为PDF文档

    点击菜单栏中的转换模块,选择将“将文件转换为PDF文件”选项。

    image-20240312224939935

    image-20240312225137499

    添加水印功能

    安全——添加水印,填写水印内容,确认即可

    image-20240312225352581

    我们就成功在本地搭建了Stirling-PDF,但如果想实现出门在外,或者直接把这个功能分享给身边人,省去本地部署的步骤,并且也能随时随地使用Stirling-PDF进行异地工作就需要借助cpolar内网穿透工具来实现公网访问了!接下来介绍一下如何安装cpolar内网穿透并实现Stirling-PDF的公网访问!

    4. 安装cpolar内网穿透

    下面是安装cpolar步骤:

    cpolar官网地址: https://www.cpolar.com

    • 使用一键脚本安装命令
    curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
    
    • 1
    • 向系统添加服务
    sudo systemctl enable cpolar
    
    • 1
    • 启动cpolar服务
    sudo systemctl start cpolar
    
    • 1

    cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。

    接下来配置一下Stirling-PDF的公网地址,

    登录后,点击左侧仪表盘的隧道管理——创建隧道,

    创建一个Stirling-PDF的公网http地址隧道

    • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
    • 协议:选择http
    • 本地地址:8380(本地访问的地址)
    • 域名类型:免费选择随机域名
    • 地区:选择China Top

    image-20240312231347241

    隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

    image-20240312231502581

    使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到Striling-PDF界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可到公网进行远程访问了!

    image-20240312231654447

    小结

    如果我们需要长期异地远程访问Stirling-PDF,由于刚才创建的是随机的地址,24小时会发生变化。另外它的网址是由随机字符生成,不容易记忆。如果想把域名变成固定的二级子域名,并且不想每次都重新创建隧道来访问Stirling-PDF,我们可以选择创建一个固定的http地址来解决这个问题。

    5. 固定Stirling-PDF公网地址

    我们接下来为其配置固定的HTTP端口地址,该地址不会变化,方便分享给别人长期查看你的博客,而无需每天重复修改服务器地址。

    配置固定http端口地址需要将cpolar升级到专业版套餐或以上。

    登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

    image-20240312231950575

    保留成功后复制保留成功的二级子域名的名称

    image-20240312232024660

    返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

    image-20240312232115628

    修改隧道信息,将保留成功的二级子域名配置到隧道中

    • 域名类型:选择二级子域名
    • Sub Domain:填写保留成功的二级子域名

    点击更新(注意,点击一次更新即可,不需要重复提交)

    image-20240312232230342

    更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

    image-20240312232337457

    最后,我们使用固定的公网https地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,可以随时随地进行异地访问Stirling-PDF!

    image-20240312232450992

  • 相关阅读:
    U260684 二叉树的遍历
    Redis为什么能抗住10万并发?揭秘性能优越的背后原因
    零信任解决方案的SDP 微隔离 IAM介绍
    RFID车辆自动化称重管理
    Java 新手如何使用Spring MVC RestAPI的加密
    2023.09.30使用golang1.18编译Hel10-Web/Databasetools的windows版
    视频增强修复工具Topaz Video AI mac中文版安装教程
    【数据结构】哈希表
    React —— React中组件的三大属性(state,props,ref)
    01 | 如何管理项目
  • 原文地址:https://blog.csdn.net/2301_79855962/article/details/136712320