
Deploy Gotenberg on Your Own Server
Docker-Powered Stateless API For PDF Files
💾 Storage✅ Productivity
想更快部署 Gotenberg到服务器?试试 Senate,一条命令完成部署,自动配置 HTTPS 和监控。
什么是 Gotenberg?
Gotenberg provides a developer-friendly API to interact with powerful tools like Chromium and LibreOffice for converting numerous document formats (HTML, Markdown, Word, Excel, etc.) into PDF files, and more!
自托管 Gotenberg
按照以下步骤在您的服务器上部署。
1
安装 Docker
如果服务器上已安装 Docker,可跳过此步骤。
curl -fsSL https://get.docker.com | sh
2
配置
自定义以下设置。大多数情况下使用默认值即可。
General
API
Chromium
LibreOffice
PDF Engines
Webhook
Prometheus
Logging
3
部署
复制配置并在服务器上运行。
services:
gotenberg:
environment:
API_DISABLE_HEALTH_CHECK: "false"
API_PORT: "3000"
API_ROOT_PATH: /
API_TIMEOUT: 30s
API_TRACE_HEADER: Gotenberg-Trace
CHROMIUM_ALLOW_FILE_ACCESS_FROM_FILES: "true"
CHROMIUM_ALLOW_INSECURE_LOCALHOST: "true"
CHROMIUM_ALLOW_LIST: ""
CHROMIUM_DENY_LIST: ^file:///[^tmp].*
CHROMIUM_DISABLE_JAVASCRIPT: "false"
CHROMIUM_DISABLE_ROUTES: "false"
CHROMIUM_DISABLE_WEB_SECURITY: "true"
CHROMIUM_HOST_RESOLVER_RULES: ""
CHROMIUM_IGNORE_CERTIFICATE_ERRORS: "true"
CHROMIUM_INCOGNITO: "false"
CHROMIUM_PROXY_SERVER: ""
GRACEFUL_SHUTDOWN_DURATION: 30s
LIBREOFFICE_DISABLE_ROUTES: "false"
LIBREOFFICE_LISTENER_RESTART_THRESHOLD: "10"
LIBREOFFICE_LISTENER_START_TIMEOUT: 10s
LOG_FORMAT: auto
LOG_LEVEL: info
PDFENGINES_DISABLE_ROUTES: "false"
PDFENGINES_ENGINES: ""
PROMETHEUS_COLLECT_INTERVAL: 1s
PROMETHEUS_DISABLE_COLLECT: "false"
PROMETHEUS_DISABLE_ROUTE_LOGGING: "false"
PROMETHEUS_NAMESPACE: gotenberg
VERSION: "7"
WEBHOOK_ALLOW_LIST: ""
WEBHOOK_CLIENT_TIMEOUT: 30s
WEBHOOK_DENY_LIST: ""
WEBHOOK_DISABLE: "false"
WEBHOOK_ERROR_ALLOW_LIST: ""
WEBHOOK_ERROR_DENY_LIST: ""
WEBHOOK_MAX_RETRY: "4"
WEBHOOK_RETRY_MAX_WAIT: 30s
WEBHOOK_RETRY_MIN_WAIT: 1s
然后运行:
docker compose up -d
4
访问
启动后,访问您的应用: http://localhost:80
为什么要自托管 Gotenberg?
完全数据所有权
数据保存在您的服务器上,无第三方访问。
无月费
只需支付服务器费用,无按席位或用量收费。
完全控制
按您的需求自定义、备份和扩展。
隐私与合规
满足 GDPR、HIPAA 或内部安全要求。
技术细节
想更快部署?
尝试 Senate!Senate 帮您处理 Docker、HTTPS、更新和监控。一条命令部署 300+ 应用。
在任意 Linux 服务器上安装:
sh -c "$(curl -sSL https://get.senate.sh)"