文档管理系统Mayan EDMS的安装

今天台风 “贝碧嘉” 在上海登陆,这名字起的那叫一个绝,听起来像是 卑鄙家, 说的就是这台风 卑鄙到家了

什么是 EDMS?

EDMS 代表电子文档管理系统,它是 DMS 的更现代版本。DMS 是文档管理系统。一种用于存储、排序和分类打印文档的系统。它是一种电子归档系统。除了扫描文档的图像外,EDMS 还支持电子文档,即在计算机中创建的可能已打印或未打印的文档。虽然它们看起来很相似,但 EDMS/DMS 不应与 CMS(内容管理系统)、IM(信息管理)、KM(知识管理)、RM(记录管理)、ECM(企业内容管理)混淆。

什么是 Mayan EDMS ?

Mayan EDMS 是一个文档管理系统。其主要目的是存储、检查和分类文件,重点是保存文档的上下文和业务信息。它还可以对这些文件进行 OCR、预览、标记、签名、发送和接收。其他值得关注的功能包括其工作流系统、基于角色的访问控制和 REST APIMayan EDMS 使用 Django Web 应用程序框架,以 Python 语言编写。

安装

在群晖上以 Docker 方式安装。

采用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

  1. 老苏采用了简化的安装模式,没有安装 elasticsearch ,所以全文检索可能无法使用 。另外也没安装 traefik
  2. 参考的 docker-compose.ymlgithub 上的 https://github.com/mayan-edms/Mayan-EDMS/blob/master/docker/docker-compose.yml ,而是 gitlab 上的 https://gitlab.com/mayan-edms/mayan-edms/-/raw/master/portainer/portainer-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
version: '3'

services:
mayan-redis:
image: redis:6.2-alpine
container_name: mayan-redis
restart: unless-stopped
volumes:
- ./redis:/data
command:
- redis-server
- --appendonly
- "no"
- --databases
- "3"
- --maxmemory
- "100mb"
- --maxclients
- "500"
- --maxmemory-policy
- "allkeys-lru"
- --save
- ""
- --tcp-backlog
- "256"
- --requirepass
- "mayanredispassword"

mayan-db:
image: postgres:14-alpine
container_name: mayan-db
restart: unless-stopped
volumes:
- ./data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=mayan
- POSTGRES_USER=mayan
- POSTGRES_PASSWORD=mayandbpass
command:
- "postgres"
- "-c"
- "checkpoint_completion_target=0.6"
- "-c"
- "default_statistics_target=200"
- "-c"
- "maintenance_work_mem=128MB"
- "-c"
- "max_connections=150"
- "-c"
- "shared_buffers=256MB"
- "-c"
- "work_mem=8MB"

mayan-rabbitmq:
image: rabbitmq:3.9-management-alpine
container_name: mayan-rabbitmq
restart: unless-stopped
volumes:
- ./rabbitmq:/var/lib/rabbitmq
environment:
RABBITMQ_DEFAULT_USER: mayan
RABBITMQ_DEFAULT_PASS: mayanrabbitpass
RABBITMQ_DEFAULT_VHOST: mayan

mayan:
image: mayanedms/mayanedms:latest
container_name: mayan-web
# restart: unless-stopped
ports:
- 8744:8000
volumes:
- ./app:/var/lib/mayan
- ./staging:/staging_folder
- ./watch:/watch_folder
environment:
MAYAN_CELERY_BROKER_URL: amqp://mayan:mayanrabbitpass@maya-rabbitmq:5672/mayan
MAYAN_CELERY_RESULT_BACKEND: redis://:mayanredispassword@mayan-redis:6379/1
MAYAN_DATABASES: "{'default':{'ENGINE':'django.db.backends.postgresql','NAME':'mayan','PASSWORD':'mayandbpass','USER':'mayan','HOST':'mayan-db'}}"
MAYAN_LOCK_MANAGER_BACKEND: mayan.apps.lock_manager.backends.redis_lock.RedisLock
MAYAN_LOCK_MANAGER_BACKEND_ARGUMENTS: "{'redis_url':'redis://:mayanredispassword@mayan-redis:6379/2'}"
depends_on:
- mayan-redis
- mayan-db
- mayan-rabbitmq

下面是几个容器环境变量的简单说明

  • postgres 的环境变量
可变
POSTGRES_DB 数据库库名
POSTGRES_USER 数据库用户
POSTGRES_PASSWORD 数据库密码
  • rabbitmq 的环境变量
可变
RABBITMQ_DEFAULT_USER rabbitmq用户
RABBITMQ_DEFAULT_PASS rabbitmq密码
RABBITMQ_DEFAULT_VHOST rabbitmq 虚拟主机名
  • mayanedms 的环境变量
可变
MAYAN_CELERY_BROKER_URL rabbitmq 访问地址
MAYAN_CELERY_RESULT_BACKEND redis 访问地址
MAYAN_DATABASES postgres 数据库访问地址
MAYAN_LOCK_MANAGER_BACKEND 锁管理器后端
MAYAN_LOCK_MANAGER_BACKEND_ARGUMENTS 锁管理器后端参数
MAYAN_LANGUAGE_CODE 语言设置

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 mayan 和 子目录
mkdir -p /volume1/docker/mayan/{app,data,rabbitmq,redis,staging,watch}

# 进入 mayan 目录
cd /volume1/docker/mayan

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

启动的时间会比较长,不排除是老苏机器性能的原因

当看到容器 mayan-webcpu 占用降下来之后

在浏览器中输入 http://群晖IP:8744 就能看到登录界面

第一次会显示登录凭证,要保存好

登录成功后的主界面

第一件事情应该是修改密码,提高安全性

Documents –> New document

语言这块没整明白,Chinese 居然是按方言的,除了 Mandrin Chinese 外,还有 Gan ChineseHakka ChineseYue ChineseWu ChineseXiang ChineseSouthern Min 等等

关于语言可以参考 wiki 的说明:https://en.wikipedia.org/wiki/List_of_languages_by_number_of_native_speakers

书籍拖到方框区域即可上传

一次可以上传多个

Recently accessed 中能找到上传的文档

点击标题可以预览 pdf 文档

epub 就不行。老苏搜一下支持的文档格式,是这么写的,Multiple page PDF, office files, and TIFF files are supported.

中文界面

User –> Users Details –> Locale profile

找到红色按钮 Actions –> Edit locale profile

Language 中找到 Chinese(Simplified)

Save 之后,界面就是中文了

官方有演示视频

参考文档

mayan-edms/Mayan-EDMS: Free Open Source Document Management System (mirror, no pull request or issues)
地址:https://github.com/mayan-edms/Mayan-EDMS

Mayan EDMS
地址:https://www.mayan-edms.com/

Welcome to Mayan EDMS! — Mayan EDMS 4.8.2 documentation
地址:https://docs.mayan-edms.com/

mayanedms/mayanedms Tags | Docker Hub
地址:https://hub.docker.com/r/mayanedms/mayanedms/tags