
jbarlow83/ocrmypdf-alpine本镜像基于Alpine Linux构建,集成OCRmyPDF工具与Tesseract OCR引擎,提供轻量级PDF文件OCR处理能力。通过对扫描生成的图像PDF进行文本识别,自动添加可搜索、可复制的文本层,同时保留原始文档布局与格式,适用于文档数字化、档案管理等场景。
通过挂载本地目录至容器/data目录,指定输入PDF与输出PDF路径即可执行OCR处理:
bashdocker run --rm -v $(pwd):/data ocrmypdf-alpine input.pdf output.pdf
说明:
--rm确保容器退出后自动删除;-v $(pwd):/data将当前目录挂载至容器内/data目录,实现文件共享
通过-l参数指定1种或多种识别语言(语言代码见Tesseract语言列表):
bash# 中英双语识别 docker run --rm -v $(pwd):/data ocrmypdf-alpine -l eng+chi_sim input.pdf output.pdf
调整压缩级别与分辨率,平衡文件大小与清晰度:
bash# 高分辨率输出(300dpi)+ 低压缩 docker run --rm -v $(pwd):/data ocrmypdf-alpine --dpi 300 --output-type pdfa --jpeg-quality 90 input.pdf output.pdf
通过shell命令批量处理目录内所有PDF文件:
bashfor file in ./input/*.pdf; do docker run --rm -v $(pwd):/data ocrmypdf-alpine "input/$(basename $file)" "output/$(basename $file)" -l eng done
| 环境变量 | 说明 | 默认值 |
|---|---|---|
OCRMYPDF_LANGUAGE | 默认OCR识别语言(多语言用+分隔) | eng(英语) |
TESSDATA_PREFIX | Tesseract语言数据文件路径 | /usr/share/tesseract-ocr/4.00/tessdata |
默认包含英语语言包,如需其他语言,可通过挂载本地Tesseract语言文件实现:
chi_sim.traineddata中文包)bashdocker run --rm -v $(pwd):/data -v $(pwd)/tessdata:/usr/share/tesseract-ocr/4.00/tessdata ocrmypdf-alpine -l chi_sim input.pdf output.pdf
创建docker-compose.yml简化重复任务:
yamlversion: '3' services: ocrmypdf: image: ocrmypdf-alpine volumes: - ./input:/data/input # 输入PDF目录 - ./output:/data/output # 输出PDF目录 - ./tessdata:/usr/share/tesseract-ocr/4.00/tessdata # 自定义语言包 command: input/scan.pdf output/scan_ocr.pdf -l eng+chi_sim --dpi 300
执行:docker-compose up
755)--memory=4g限制容器内存使用
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务