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

相关推荐
bigFish啦啦啦24 分钟前
docker proxy
docker
开开心心_Every1 小时前
全能视频处理工具介绍说明
开发语言·人工智能·django·pdf·flask·c#·音视频
果子⌂1 小时前
容器技术入门之Docker环境部署
linux·运维·docker
Liudef063 小时前
Docker企业级应用:从入门到生产环境最佳实践
docker·容器·eureka
?ccc?4 小时前
容器技术技术入门与 Docker 环境部署
运维·docker·容器
时时刻刻看着自己的心4 小时前
docker启动报错
运维·docker·容器
Right.W5 小时前
生成PDF文件(基于 iText PDF )
spring cloud·pdf
匆匆那年9675 小时前
Docker容器中安装MongoDB,导入数据
运维·docker·容器
i小溪6 小时前
在使用 Docker 时,如果容器挂载的数据目录(如 `/var/moments`)位于数据盘,只要服务没有读写,数据盘是否就不会被唤醒?
人工智能·docker
蓝纹绿茶9 小时前
【Mac】实现Docker下载安装【正在逐步完善】
macos·docker·容器