当前位置: 首页 > news >正文

【打工日常】使用docker部署在线PDF工具

一、Stirling-PDF介绍

Stirling-PDF是一款功能强大的本地托管的基于 Web 的 PDF 操作工具,使用 docker部署。该自托管 Web 应用程序最初是由ChatGPT全权制作的,现已发展到包含广泛的功能来处理您的所有 PDF 需求。允许对 PDF 文件执行各种操作,例如拆分、合并、转换、重组、添加图像、旋转、压缩等。。

二、本次实践介绍

1.本次实践简介

本次实践部署环境为个人测试环境

2.本地环境规划

本次实践环境规划:docker快速拉取docker-ui镜像,然后后台启动docker-ui镜像

镜像命名IP地址容器镜像版本操作系统版本
pdflocalhostlatestubuntu 22.04

三、检查本地Docker环境

1.检查本地Docker版本

检查Docker版本:docker versionroot@WellDone:/home/goodjob# docker version
Client: Docker Engine - CommunityVersion:           25.0.0API version:       1.44Go version:        go1.21.6Git commit:        e758fe5Built:             Thu Jan 18 17:09:49 2024OS/Arch:           linux/amd64Context:           defaultServer: Docker Engine - CommunityEngine:Version:          25.0.0API version:      1.44 (minimum version 1.24)Go version:       go1.21.6Git commit:       615dfdfBuilt:            Thu Jan 18 17:09:49 2024OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.6.27GitCommit:        a1496014c916f9e62104b33d1bb5bd03b0858e59runc:Version:          1.1.11GitCommit:        v1.1.11-0-g4bccb38docker-init:Version:          0.19.0GitCommit:        de40ad0
root@WellDone:/home/goodjob# 

2.检查Docker服务状态

检查Docker服务状态,确保Docker服务正常运行。

systemctl status dockerroot@WellDone:/home/goodjob/Downloads# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Wed 2024-01-24 08:54:31 CST; 1 day 4h ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 1549 (dockerd)Tasks: 65Memory: 419.5MCPU: 38.874sCGroup: /system.slice/docker.service├─  1549 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock├─  2010 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 6379 -container-ip 172.17.0.2 -container-port 6379├─  2016 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 6379 -container-ip 172.17.0.2 -container-port 6379├─  2029 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 5432 -container-ip 172.17.0.3 -container-port 5432├─  2036 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 5432 -container-ip 172.17.0.3 -container-port 5432├─123083 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8888 -container-ip 172.17.0.4 -container-port 8080└─123095 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 8888 -container-ip 172.17.0.4 -container-port 80801月 24 08:54:31 WellDone dockerd[1549]: time="2024-01-24T08:54:31.067895045+08:00" level=info msg="API listen on /run/docker.sock"
1月 24 08:54:31 WellDone systemd[1]: Started Docker Application Container Engine.
1月 24 16:13:48 WellDone dockerd[1549]: time="2024-01-24T16:13:48.185008219+08:00" level=info msg="ignoring event" container=8ad99af82d8a41dd661d>
1月 24 16:13:48 WellDone dockerd[1549]: time="2024-01-24T16:13:48.189484205+08:00" level=warning msg="ShouldRestart failed, container will not be>
1月 24 21:58:08 WellDone dockerd[1549]: time="2024-01-24T21:58:08.024915139+08:00" level=info msg="ignoring event" container=27fd28e2993f31b170b8>
1月 24 21:58:08 WellDone dockerd[1549]: time="2024-01-24T21:58:08.029986730+08:00" level=warning msg="ShouldRestart failed, container will not be>
1月 25 10:46:16 WellDone dockerd[1549]: time="2024-01-25T10:46:16.329180722+08:00" level=info msg="Container failed to exit within 10s of signal >
1月 25 10:46:16 WellDone dockerd[1549]: time="2024-01-25T10:46:16.350757439+08:00" level=info msg="ignoring event" container=b1223add00f36bbb3246>
1月 25 10:49:21 WellDone dockerd[1549]: time="2024-01-25T10:49:21.993755983+08:00" level=info msg="Container failed to exit within 10s of signal >
1月 25 10:49:22 WellDone dockerd[1549]: time="2024-01-25T10:49:22.015822650+08:00" level=info msg="ignoring event" container=edb0e153b45dbe62acd8>
lines 1-28/28 (END)

四、部署Stirling-PDF镜像

1.下载Stirling-PDF镜像

docker pull registry.cn-guangzhou.aliyuncs.com/welldene/docker:pdfroot@WellDone:/home/goodjob# docker pull registry.cn-guangzhou.aliyuncs.com/welldene/docker:pdf
cc1ee397d0db: Pulling from welldene/docker
f56be85fc22e: Pull complete 
2ce963c369bc: Pull complete 
59b9d2200e63: Pull complete 
3e1e579c95fe: Pull complete 
547a97583f72: Pull complete 
1f21f983520d: Pull complete 
c23b4f8cf279: Pull complete 
474309a46f42: Pull complete 
af64c5430238: Pull complete 
7b75d6dbb9f1: Pull complete 
c778446d5628: Pull complete 
Digest: sha256:265037f4d46050d0bee8b0601b617f74537a518c543f55d3b3c724c63c792c6d
Status: Downloaded newer image for registry.cn-guangzhou.aliyuncs.com/welldene/docker:pdf
registry.cn-guangzhou.aliyuncs.com/welldene/docker:pdfroot@WellDone:/home/goodjob# docker images
registry.cn-guangzhou.aliyuncs.com/welldene/docker   pdf             cc1ee397d0db   11 days ago     1.4GB

2.创建容器

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

完整创建过程:1.使用docker-cli启动一个Stirling-PDF的容器。docker run -d --name pdf 
-v /opt/pdf/trainingData:/usr/share/tesseract-ocr/5/tessdata
-v /opt/pdf/extraConfigs:/configs
-v /opt/pdflogs:/logs
-e DOCKER_ENABLE_SECURITY=false
-p 18181:8080 registry.cn-guangzhou.aliyuncs.com/welldene/docker:pdf2.使用docker-compose启动一个Stirling-PDF的容器version: '3.9'
services:welldene:image: 'registry.cn-guangzhou.aliyuncs.com/welldene/docker:pdf'ports:- '18181:8080'environment:- DOCKER_ENABLE_SECURITY=falsevolumes:- '/opt/pdflogs:/logs'- '/opt/pdf/extraConfigs:/configs'- '/opt/pdf/trainingData:/usr/share/tesseract-ocr/5/tessdata'container_name: pdf3.容器启动正常,访问
http://ip:18181

​​​3. 检查容器运行状态

检查容器的运行状态,确保服务的正常运行。

docker ps

root@WellDone:/home/goodjob# docker ps
CONTAINER ID   IMAGE                                                       COMMAND                   CREATED         STATUS         PORTS                                       NAMES
pdf             registry.cn-guangzhou.aliyuncs.com/welldene/docker:pdf             "tini -- /scripts/in…"   pdf             6 seconds ago   Up 5 seconds   0.0.0.0:18181->8080/tcp, :::18181->8080/tcp

五、访问Stirling-PDF页面

访问Stirling-PDF首页 访问地址:http://localhost:18181

相关文章:

  • 基于MUSIC算法的六阵元圆阵DOA估计matlab仿真
  • 《TCP/IP详解 卷一》第9章 广播和组播
  • 【Linux C | 网络编程】套接字选项、getsockopt、setsockopt详解及C语言例子
  • MYSQL高级_目录
  • Windows的Docker-Desktop安装与问题总结
  • 2. 获取帮助(Getting Help)
  • 【JavaScript 漫游】【026】进度事件简记
  • Sora - 探索AI视频模型的无限可能
  • excel导出标准化
  • html2canvas 将DOM节点转成图片
  • sql-labs第46关(order by盲注脚本)
  • golang 函数式编程库samber/mo使用: IO
  • C++利用汇编挖掘编程语言的本质..
  • C++:String类的使用
  • Attention 中的 Q, K, V
  • 《用数据讲故事》作者Cole N. Knaflic:消除一切无效的图表
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • CentOS6 编译安装 redis-3.2.3
  • HTML中设置input等文本框为不可操作
  • IDEA 插件开发入门教程
  • JS基础篇--通过JS生成由字母与数字组合的随机字符串
  • JS实现简单的MVC模式开发小游戏
  • Markdown 语法简单说明
  • mongo索引构建
  • Spring Cloud中负载均衡器概览
  • 大主子表关联的性能优化方法
  • 如何利用MongoDB打造TOP榜小程序
  • 使用权重正则化较少模型过拟合
  • 我从编程教室毕业
  • 怎么把视频里的音乐提取出来
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • 整理一些计算机基础知识!
  • ​2020 年大前端技术趋势解读
  • #Spring-boot高级
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • (1) caustics\
  • (阿里云万网)-域名注册购买实名流程
  • (附源码)php新闻发布平台 毕业设计 141646
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (区间dp) (经典例题) 石子合并
  • (三) prometheus + grafana + alertmanager 配置Redis监控
  • (三分钟)速览传统边缘检测算子
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (一)为什么要选择C++
  • *2 echo、printf、mkdir命令的应用
  • .Net 6.0 处理跨域的方式
  • .Net 8.0 新的变化
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .net framework profiles /.net framework 配置