Docker部署PaperLess在线文档管理系统

AI摘要:Paperless-ngx是一款将纸质文件数字化管理的在线文档管理系统,支持OCR识别、多语言、全文搜索等功能。本文介绍了使用Docker在群晖NAS上部署Paperless-ngx的步骤,包括配置文件、创建账号密码等,并展示了其使用和特殊功能。

Powered by AISummary.

一、Paperless-ngx简介

Paperless-ngx不仅仅是一个文档管理系统,它是一个完整的解决方案,将你的纸质文件转化为可搜索的在线存档,减少纸张的使用。其核心功能包括:

  • 文档的组织与索引:通过标签、对应者、类型等多种方式组织扫描文档。
  • OCR文本识别:对文档进行光学字符识别,使包含图像的扫描文档也能搜索和选择文本。
  • 多语言支持:利用开源的Tesseract引擎,支持100多种语言。
  • 长期存储格式:文档以PDF/A格式保存,设计用于长期存储。
  • 智能标签与分类:使用机器学习自动添加标签、对应者和文档类型。
  • 广泛的文件支持:支持PDF文档、图像、纯文本文件、Office文档等。
  • 定制化的文件管理:Paperless-ngx管理文件名和文件夹,支持不同的配置。
  • 现代化的网页应用:定制仪表板、过滤器、批量编辑、拖放上传、自定义视图、共享链接等。
  • 全文搜索:自动完成、相关性排序、高亮显示匹配查询的部分。
  • 电子邮件处理:从电子邮件账户导入文档,配置多个账户和规则。
  • 多用户权限系统:内置健壮的多用户权限系统。
  • 多核系统优化:并行处理多个文档。

所有数数字文档均支持:不止是图片,连pdf, word,excel,markdown统统都支持。真正实现了,文档数字化,统一管理,高效搜索

这就是我今天带给大家的新玩具Paperless-ngx,顾名思义:无纸化

它能帮助你整理你生活中的合同、纸质文档、账单等等,同时还支持管理数字文档(word、excel、pdf等)
_

二、搭建步骤:

1. docker管理图形工具

群晖 DSM 7.2版本以上可以直接使用Container Manager

威联通 ContainerStation

2. 群晖搭建步骤

本次我使用的是群晖的Container Manager来搭建 ,Portainer与威联通基本类似:

File Station

  • File Station 打开docker 文件夹,创建paperless-ngx文件夹

  • 依次创建如下目录:
  • consume
  • data
  • export
  • media
  • pgdata
  • redisdata

上传compose配置

复制下列配置:

version: '3.4'

services:
  broker:
    image: library/redis:7
    restart: unless-stopped
    volumes:
      - /volume1/docker/paperless-ngx/redisdata:/data

  db:
    image: library/postgres:15
    restart: unless-stopped
    volumes:
      - /volume1/docker/paperless-ngx/pgdata:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: paperless
      POSTGRES_USER: paperless
      POSTGRES_PASSWORD: paperless

  webserver:
    image: paperlessngx/paperless-ngx:latest
    restart: unless-stopped
    depends_on:
      - db
      - broker
      - gotenberg
      - tika
    ports:
      - '28000:8000' # change it if you like
    healthcheck:
      test: ['CMD', 'curl', '-fs', '-S', '--max-time', '2', 'http://localhost:8000']
      interval: 30s
      timeout: 10s
      retries: 5
    volumes:
      - /volume1/docker/paperless-ngx/data:/usr/src/paperless/data
      - /volume1/docker/paperless-ngx/media:/usr/src/paperless/media
      - /volume1/docker/paperless-ngx/export:/usr/src/paperless/export
      - /volume1/docker/paperless-ngx/consume:/usr/src/paperless/consume
    environment:
      PAPERLESS_REDIS: redis://broker:6379
      PAPERLESS_DBHOST: db
      PAPERLESS_TIKA_ENABLED: 1
      PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://tika:3009
      PAPERLESS_TIKA_ENDPOINT: http://gotenberg:9998
      PAPERLESS_OCR_LANGUAGES: chi-sim chi-tra # change it if you like
      PAPERLESS_OCR_LANGUAGE: eng+chi_sim # change it if you like
      USERMAP_UID: 0
      USERMAP_GID: 0
      PAPERLESS_TIME_ZONE: Asia/Shanghai # change it if you like
    dns:
      - 8.8.8.8
      - 8.8.4.4

  gotenberg:
    image: gotenberg/gotenberg:7.10
    restart: unless-stopped
    command:
      - 'gotenberg'
      - '--chromium-disable-javascript=true'
      - '--chromium-allow-list=file:///tmp/.*'

  tika:
    image: apache/tika:latest
    restart: unless-stopped

配置讲解(自定义):

我在上述文件中标注了,我认为可以修改的部分 # change it if you like。其余部分,初学者,不建议修改
  • webserver 的port 部分: 可以改为其他端口号 如'38000:8000' ,不要修改后面的8000
  • PAPERLESS\_OCR\_LANGUAGES: 设置paperless 支持的语言,chi-sim chi-tra (简体中文、繁体中文),你可以加入你想要的语言如:jpn
  • 另外系统已经内置:英语、德语、意大利语等
  • PAPERLESS\_OCR\_LANGUAGE:默认ocr的语言,我这里设置的英文和中文简体
  • PAPERLESS\_TIME\_ZONE: 设置你的时区

等待:

完成:

3.使用

浏览器进入程序:[ip]:[端口]

ip为你nas所在ip(这里我的是172.16.22.22),端口为上面配置文件定义,如果你按照我的教程,则是28000

但是似乎你并没有账号密码哎,接下来是创建账号密码:

选择webserver的容器,选择打开终端:

python3 manage.py createsuperuser

依次输入:

  • username
  • email
  • password

4.特殊功能展示

首页:

测试pdf文件:

已经将文字提炼出来了:

在线预览:

搜索功能:

图片:

编辑可以看到识别后的结果,可以修改

搜索:

word 尝试:

三、其他app /支持

你也可以下载第三方的应用paperless\_app

你也可以选择使用其他扫描应用,然后再导入pp中(更好的识别),比如免费的Microsoft Lens

你还可以选择连接你的物理打印机,自动上传到paperless:

如果你有更多玩法,也希望分享出来哈。

打赏
评论区
头像
文章目录

本站已运行: