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

相关推荐
@泽栖6 小时前
Docker 常用命令
运维·服务器·docker
鲁正杰8 小时前
在一个服务器上抓取 Docker 镜像并在另一个服务器上运行
运维·服务器·docker
老大白菜9 小时前
Windows 11 安装 Dify 完整指南 非docker环境
windows·docker·容器
VinciYan12 小时前
基于Jenkins+Docker的自动化部署实践——整合Git与Python脚本实现远程部署
python·ubuntu·docker·自动化·jenkins·.net·运维开发
tntlbb13 小时前
Ubuntu20.4 VPN+Docker代理配置
运维·ubuntu·docker·容器
Gabriel_liao13 小时前
Docker安装Neo4j
docker·容器·neo4j
豆豆豆豆变16 小时前
Docker轻量级可视化工具Portainer
docker·容器·自动化运维
大熊程序猿16 小时前
xxl-job docker 安装
运维·docker·容器
shelby_loo17 小时前
使用 Docker 在 Ubuntu 下部署 Cloudflared Tunnel 服务器
服务器·ubuntu·docker
咏颜18 小时前
Ubuntu离线安装Docker容器
linux·运维·服务器·经验分享·ubuntu·docker