使用docker搭建s-pdf

froodle/s-pdf是一个基于Docker的工具,用于将HTML或URL转换为PDF文件。它提供了一个简单易用的API接口,可以通过发送HTTP请求来实现转换功能。

使用Docker Compose文件可以方便地搭建froodle/s-pdf的容器环境。

yaml 复制代码
version: '3.9'
services:
    s-pdf:
        image: 'frooodle/s-pdf:latest'
        container_name: spdf
        environment:
            - DOCKER_ENABLE_SECURITY=false
        volumes:
            - '$PWD/logs:/logs'
            - '$PWD/extraConfigs:/configs'
            - '$PWD/trainingData:/usr/share/tesseract-ocr/5/tessdata'
        ports:
            - '2223:8080'
  • version: '3.9' 表示使用Docker Compose的版本号。

  • services: 定义了要运行的服务。

  • s-pdf: 定义了一个名为"s-pdf"的服务。

  • image: 'froodle/s-pdf:latest' 指定了使用的镜像,这里使用了最新版本的froodle/s-pdf。

  • container_name: spdf 指定了容器的名称为"spdf"。

  • environment: 配置了环境变量。

    • DOCKER_ENABLE_SECURITY=false 禁用了Docker的安全模式,这样可以在容器内部运行一些可能会影响安全性的操作。
  • volumes: 挂载了一些数据卷,用于持久化存储数据。

    • '$PWD/logs:/logs' 将主机当前目录下的"logs"目录挂载到容器内的"/logs"目录,用于存储日志文件。

    • '$PWD/extraConfigs:/configs' 将主机当前目录下的"extraConfigs"目录挂载到容器内的"/configs"目录,用于存储额外的配置文件。

    • '$PWD/trainingData:/usr/share/tesseract-ocr/5/tessdata' 将主机当前目录下的"trainingData"目录挂载到容器内的"/usr/share/tesseract-ocr/5/tessdata"目录,用于存储数据。

  • ports: 将容器内部的8080端口映射到主机的2223端口,可以通过访问主机的2223端口来访问froodle/s-pdf的API接口。

接下来是对应的Docker CLI命令,用于创建和运行froodle/s-pdf的容器:

复制代码
docker run -d \
    --name spdf \
    -e DOCKER_ENABLE_SECURITY=false \
    -v $PWD/logs:/logs \
    -v $PWD/extraConfigs:/configs \
    -v $PWD/trainingData:/usr/share/tesseract-ocr/5/tessdata \
    -p 2223:8080 \
    froodle/s-pdf:latest

命令中的参数解释如下:

  • -d 后台运行容器。

  • --name spdf 指定容器的名称为"spdf"。

  • -e DOCKER_ENABLE_SECURITY=false 设置环境变量,禁用Docker的安全模式。

  • -v $PWD/logs:/logs 挂载宿主机的"logs"目录到容器的"/logs"目录。

  • -v $PWD/extraConfigs:/configs 挂载宿主机的"extraConfigs"目录到容器的"/configs"目录。

  • -v $PWD/trainingData:/usr/share/tesseract-ocr/5/tessdata 挂载宿主机的"trainingData"目录到容器的"/usr/share/tesseract-ocr/5/tessdata"目录。

  • -p 2223:8080 将容器的8080端口映射到宿主机的2223端口。

  • froodle/s-pdf:latest 使用的镜像为froodle/s-pdf的最新版本。

这样,就可以使用Docker CLI命令创建并运行froodle/s-pdf的容器了。

相关推荐
sauTCc14 小时前
Docker初探
docker
c无序15 小时前
【Docker-7】Docker是什么+Docker版本+Docker架构+Docker生态
docker·容器·架构
FixBug_Nick15 小时前
使用Docker安装及使用最新版本的Jenkins
docker·容器·jenkins
ElasticPDF-新国产PDF编辑器15 小时前
Vue use pdf.js and Elasticpdf tutorial
vue.js·pdf
Zero_to_zero123417 小时前
解决docker的ubuntu系统中文乱码问题
ubuntu·docker·容器
@郭小茶17 小时前
docker-compose方式部署docker项目
运维·docker·容器
程序员 小柴20 小时前
docker的与使用
java·docker·eureka
ghostwritten20 小时前
Docker Registry Clean
运维·docker·容器
ElasticPDF-新国产PDF编辑器21 小时前
Angular 项目 PDF 批注插件库在线版 API 示例教程
前端·pdf·angular.js
宋冠巡21 小时前
Windows安装Docker(Docker Desktop)
windows·docker·容器