使用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的容器了。

相关推荐
gsls20080810 小时前
JVM 堆内存参数 & Docker 容器适配,一次讲清楚
jvm·docker·容器
Lumbrologist11 小时前
【零基础部署】Docker 部署 AutoGen 多 Agent 对话框架保姆级教程
运维·docker·容器
Plastic garden14 小时前
Docker compose ruoyi示例
运维·docker·容器
qq_4523962314 小时前
第十四篇:《Docker Swarm 生产实践:堆栈部署与配置管理》
运维·docker·容器
qq_4523962315 小时前
第十三篇:《Docker Swarm 集群基础》
运维·docker·容器
取经蜗牛16 小时前
docker环境中redis连接三种场景配置指南,物理机、wsl、docker
redis·docker·容器
尼莫点nemo17 小时前
docker-builder:把 .devcontainer/ 从手写变成一句话生成
docker
zandy101117 小时前
Hermes Agent 2026年6月最新安装教程
docker·github·agent
爱喝水的鱼丶17 小时前
SAP-ABAP:SAP 简单报表输出开发系列(共6篇) 第五篇:SAP 报表多格式输出:Excel/PDF 批量导出功能实现
学习·性能优化·pdf·excel·sap·abap
情绪总是阴雨天~18 小时前
Docker 基础概念完全指南:从零理解容器化技术
docker·容器