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

相关推荐
慕容晓开33 分钟前
docker,本地目录挂载
docker
Mr. Cao code2 小时前
Docker:颠覆传统虚拟化的轻量级革命
linux·运维·ubuntu·docker·容器
Dontla2 小时前
Docker多共享网络配置策略(Docker多网络、Docker networks、Docker Compose网络、Docker网络、Docker共享网络)
网络·docker·容器
一只花里胡哨的程序猿2 小时前
odoo打印pdf速度慢问题
pdf·odoo
Jayin_chan3 小时前
paddlex3.0.1-ocr服务化安装部署(docker)
docker·容器·ocr
ifanatic3 小时前
[每周一更]-(第159期):Go 工程师视角:容器化技术(Docker/Kubernetes)与CI/CD流程的应用场景
docker·golang·kubernetes
灵海之森5 小时前
Python将md转html,转pdf
pdf
感哥5 小时前
Docker镜像
docker
Dontla5 小时前
Dockerfile解析器指令(Parser Directive)指定语法版本,如:# syntax=docker/dockerfile:1
java·docker·eureka
楠神说软件测试7 小时前
Docker命令(全)
docker