Gotenberg Docker Compose 配置:完整的服务编排示例

Gotenberg Docker Compose 配置:完整的服务编排示例

【免费下载链接】gotenberg A developer-friendly API for converting numerous document formats into PDF files, and more! 【免费下载链接】gotenberg 项目地址: https://gitcode.com/gh_mirrors/go/gotenberg

Gotenberg 是一个强大的开源文档转换工具,能够将 HTML、Markdown、Word、Excel 等多种格式转换为 PDF 文件。通过 Docker Compose 配置,您可以快速部署和管理这个强大的文档转换服务。🚀

为什么选择 Docker Compose 部署 Gotenberg?

Docker Compose 提供了一种简单高效的方式来编排和管理 Gotenberg 服务。通过一个 YAML 配置文件,您可以定义所有必要的服务组件,包括 Chrome 浏览器、LibreOffice 和多个 PDF 引擎,实现一键部署和扩展。

Gotenberg Logo Gotenberg 文档转换服务核心组件

完整的 Docker Compose 配置示例

以下是一个完整的 Gotenberg Docker Compose 配置示例,展示了如何配置所有核心功能:

version: '3.8'

services:
  gotenberg:
    image: gotenberg/gotenberg:8
    ports:
      - "3000:3000"
    environment:
      - CHROMIUM_BIN_PATH=/usr/bin/chromium
      - CHROMIUM_HYPHEN_DATA_DIR_PATH=/tmp/chromium
    volumes:
      - ./tmp:/tmp
    command:
      - "gotenberg"
      - "--chromium-auto-start=true"
      - "--api-port=3000"
      - "--api-body-limit=100MB"

核心模块配置详解

Chromium 模块配置

Chromium 是 Gotenberg 的核心组件之一,负责处理 HTML 和 Markdown 到 PDF 的转换。在 pkg/modules/chromium/chromium.go 中定义了丰富的配置选项:

environment:
  - CHROMIUM_BIN_PATH=/usr/bin/chromium
  - CHROMIUM_HYPHEN_DATA_DIR_PATH=/tmp/chromium

LibreOffice 模块配置

LibreOffice 模块处理 Office 文档到 PDF 的转换。在 pkg/modules/libreoffice/libreoffice.go 中提供了文档转换的核心功能。

PDF 引擎配置

Gotenberg 支持多种 PDF 引擎,包括 qpdf、pdfcpu、pdftk 等。您可以根据需要配置不同的引擎组合:

environment:
  - PDFENGINES_MERGE_ENGINES=qpdf,pdfcpu,pdftk
  - PDFENGINES_SPLIT_ENGINES=pdfcpu,qpdf,pdftk

高级配置选项

自定义端口和路径

ports:
  - "8080:3000"
environment:
  - API_ROOT_PATH=/api/v1/

安全配置

environment:
  - API_ENABLE_BASIC_AUTH=true
  - GOTENBERG_API_BASIC_AUTH_USERNAME=admin
  - GOTENBERG_API_BASIC_AUTH_PASSWORD=secret

最佳实践配置

生产环境推荐配置

version: '3.8'

services:
  gotenberg:
    image: gotenberg/gotenberg:8
    ports:
      - "3000:3000"
    environment:
      - CHROMIUM_AUTO_START=true
      - CHROMIUM_RESTART_AFTER=50
      - API_TIMEOUT=60s
    deploy:
      resources:
        limits:
          memory: 2G
          cpus: '2.0'

快速启动指南

  1. 创建配置文件:将上述配置保存为 docker-compose.yml
  2. 启动服务:运行 docker-compose up -d
  3. 验证部署:访问 http://localhost:3000 确认服务正常运行

故障排除和监控

Gotenberg 提供了完整的健康检查和监控功能。在 pkg/modules/api/api.go 中可以看到健康检查路由的实现:

// Health check route
a.srv.GET(
    fmt.Sprintf("%s%s", a.rootPath, "health"),
    func() echo.HandlerFunc {
        return echo.WrapHandler(healthCheckHandler)
    }(),
)

通过这个完整的 Docker Compose 配置,您可以快速搭建一个功能强大的文档转换服务,满足各种业务需求。💪

【免费下载链接】gotenberg A developer-friendly API for converting numerous document formats into PDF files, and more! 【免费下载链接】gotenberg 项目地址: https://gitcode.com/gh_mirrors/go/gotenberg

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值