前置环境准备
本次部署基于开源免费的私有档案管理系统,满足中小团队全权限档案管理需求,最低硬件要求:2核CPU/2G内存/50G可用存储,系统支持CentOS 7+、Ubuntu 20.04+,所有操作无需手动编译,零门槛落地。
步骤1:安装Docker与Docker Compose依赖
容器化部署可避免环境依赖冲突,直接复制对应系统命令执行即可:
Ubuntu 20.04/22.04 安装命令
```
sudo apt update && sudo apt install -y docker.io docker-compose
sudo systemctl enable --now docker
```
CentOS 7/8 安装命令
```
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose
sudo systemctl enable --now docker
```
执行以下命令验证安装,输出版本号即为安装成功:
```
docker --version && docker-compose --version
```
步骤2:拉取项目并修改配置
直接克隆官方部署仓库,进入部署目录:
```
git clone https://github.com/paperwork/paperwork.git
cd paperwork/docker
```
直接复制下面完整内容替换原有docker-compose.yml文件,如需修改端口或密码可直接调整:
```
version: '2'
services:
paperwork:
image: johnengelman/paperwork:latest
restart: always
ports:
- "8000:80"
environment:
DB_MYSQL_HOST: db
DB_MYSQL_NAME: paperwork
DB_MYSQL_USER: root
DB_MYSQL_PASSWORD: paperwork123
depends_on:
- db
db:
image: mariadb:10.5
restart: always
environment:
MYSQL_ROOT_PASSWORD: paperwork123
MYSQL_DATABASE: paperwork
volumes:
- ./paperwork-db:/var/lib/mysql
```

核心注意:如果你修改了数据库密码,文件中两处密码必须完全一致;如果8000端口被占用,把左侧的8000改成其他未使用端口即可。
步骤3:启动服务并完成初始化
执行启动命令,后台运行服务:
```
docker-compose up -d
```
等待2-3分钟拉取镜像启动,执行以下命令查看运行日志,没有红色报错即为启动成功:
```
docker-compose logs -f
```
按Ctrl+C退出日志查看,打开浏览器访问:http://你的服务器IP:8000,按以下步骤完成初始化:
- 输入管理员邮箱、登录密码,点击「创建管理员账号」
- 创建完成后自动跳转登录页,输入设置的账号密码登录后台
步骤4:业务配置实施
登录后按以下步骤完成基础配置,即可正式使用:
1. 创建档案分类
- 点击左侧菜单栏「设置」-「分类管理」
- 点击「新增分类」,输入分类名称,例如「合同档案」「人事档案」「项目档案」,设置可见权限后保存
- 如需层级管理,创建父分类后,新增子分类时选择对应父分类即可
2. 分配用户权限
- 点击左侧菜单栏「设置」-「用户管理」
- 点击「新增用户」,输入用户基础信息,分配对应分类的读写权限,普通员工默认仅能访问授权范围内的档案
3. 上传归档档案
- 点击顶部菜单栏「上传」
- 选择对应归档分类,拖拽上传文件,支持PDF、Word、Excel、图片等所有常见格式,单次最多支持批量上传50个文件
- 上传完成后可添加标签和备注,方便后续全文检索查找
常见问题排查
- 无法访问页面:首先检查服务器防火墙,其次检查云服务器控制台的安全组规则,确认8000端口已开放。Ubuntu开放端口命令:
sudo ufw allow 8000;CentOS开放端口命令:sudo firewall-cmd --add-port=8000/tcp --permanent && sudo firewall-cmd --reload
- 启动后提示数据库连接失败:绝大多数原因是配置文件中两处密码不一致,打开docker-compose.yml核对密码,修改后执行
docker-compose restart即可恢复
- 大文件上传失败:默认限制单个文件最大100M,如需调整,执行命令
docker-compose exec paperwork vi /etc/nginx/conf.d/paperwork.conf,修改client_max_body_size参数为需要的大小,保存后执行kill -HUP `pidof nginx`重启nginx生效
数据备份说明
所有档案数据和数据库数据都存储在当前部署目录的paperwork-db文件夹中,定期打包备份该文件夹即可,数据恢复时直接解压覆盖原有目录,重启服务即可完成恢复。