广州数字档案馆系统从零搭建:实战部署与配置指南
一、系统部署前的环境准备
在开始部署广州数字档案馆系统前,必须确保服务器环境满足以下最低要求。不满足任何一项都将导致后续步骤失败。
1.1 服务器基础环境
系统基于主流Linux发行版进行部署,以下以Ubuntu 20.04 LTS为例。使用root或具有sudo权限的用户登录服务器,执行以下命令进行系统更新和基础包安装:
```bash sudo apt update && sudo apt upgrade -y sudo apt install -y curl wget vim git unzip nginx mysql-server python3-pip python3-venv redis-server ```
检查安装是否成功:分别运行 nginx -v、mysql --version、python3 --version 和 redis-cli --version 命令,确认版本无误。
1.2 数据库初始化
广州数字档案馆系统使用MySQL作为核心数据库。执行以下命令进行安全初始化并创建专用数据库:
```bash sudo mysql_secure_installation 根据提示设置root密码,并移除匿名用户、禁止远程root登录等。
sudo mysql -u root -p 输入密码后进入MySQL命令行,执行以下SQL语句: CREATE DATABASE digital_archive DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'archive_user'@'localhost' IDENTIFIED BY 'YourStrongPassword123!'; GRANT ALL PRIVILEGES ON digital_archive. TO 'archive_user'@'localhost'; FLUSH PRIVILEGES; EXIT; ```
请务必将 ‘YourStrongPassword123!’ 替换为你自己设定的高强度密码。
二、核心应用部署与配置
2.1 获取源代码与Python环境配置
系统后端基于Django框架。在/opt目录下创建项目文件夹并拉取代码(此处以官方示例仓库为例,实际请替换为你的代码仓库地址)。
```bash cd /opt sudo git clone https://github.com/example/digital-archive-system.git cd digital-archive-system
创建并激活Python虚拟环境 python3 -m venv venv source venv/bin/activate
安装Python依赖,确保使用国内镜像加速 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt ```
2.2 配置文件详解与修改
进入项目配置目录,复制示例配置文件并进行关键修改:
```bash cd /opt/digital-archive-system/archive_system cp settings.example.py settings.py vim settings.py ```
找到以下关键配置项并修改:
```python 数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'digital_archive', 'USER': 'archive_user', 'PASSWORD': 'YourStrongPassword123!', 替换为之前设定的密码 'HOST': 'localhost', 'PORT': '3306', } }
静态文件与媒体文件存储路径 STATIC_ROOT = '/var/www/digital-archive/static/' MEDIA_ROOT = '/var/www/digital-archive/media/'
密钥,必须重新生成一个随机字符串,不能使用示例值 SECRET_KEY = 'django-insecure-你的新随机密钥' ```
生成新SECRET_KEY:在终端执行 python3 -c “from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())”,将输出结果复制替换上面的值。
2.3 数据库迁移与超级用户创建
在虚拟环境激活状态下,执行Django数据迁移命令,创建数据库表结构:
```bash python manage.py makemigrations python manage.py migrate
创建管理员账户,用于登录后台管理系统 python manage.py createsuperuser 根据提示输入用户名、邮箱和密码 ```
三、Web服务器与文件服务配置
3.1 配置Gunicorn应用服务器
使用Gunicorn作为Django的WSGI服务器。首先在虚拟环境中安装:pip install gunicorn。

创建Gunicorn系统服务文件,以便管理进程:
```bash sudo vim /etc/systemd/system/gunicorn-archive.service ```
将以下配置内容粘贴进去,注意替换User和WorkingDirectory为你的实际部署用户和路径:
```ini [Unit] Description=Gunicorn instance for Digital Archive System After=network.target
[Service] User=www-data Group=www-data WorkingDirectory=/opt/digital-archive-system Environment="PATH=/opt/digital-archive-system/venv/bin" ExecStart=/opt/digital-archive-system/venv/bin/gunicorn --workers 3 --bind unix:/opt/digital-archive-system/archive.sock archive_system.wsgi:application
[Install] WantedBy=multi-user.target ```
保存后,启动并设置开机自启:
```bash sudo systemctl start gunicorn-archive sudo systemctl enable gunicorn-archive sudo systemctl status gunicorn-archive 检查状态,确保为active (running) ```
3.2 配置Nginx反向代理与静态文件服务
创建Nginx站点配置文件:
```bash sudo vim /etc/nginx/sites-available/digital-archive ```
粘贴以下配置,将your_domain_or_ip替换为你的服务器IP或域名:
```nginx server { listen 80; server_name your_domain_or_ip;
location /static/ { alias /var/www/digital-archive/static/; }
location /media/ { alias /var/www/digital-archive/media/; }
location / { include proxy_params; proxy_pass http://unix:/opt/digital-archive-system/archive.sock; } } ```
创建静态文件目录并收集Django静态文件:
```bash sudo mkdir -p /var/www/digital-archive/{static,media} sudo chown -R www-data:www-data /var/www/digital-archive/ sudo chmod -R 755 /var/www/digital-archive/
在虚拟环境中,于项目目录下执行 python manage.py collectstatic 输入yes确认 ```
启用Nginx配置并重启服务:
```bash sudo ln -s /etc/nginx/sites-available/digital-archive /etc/nginx/sites-enabled/ sudo nginx -t 测试配置语法 sudo systemctl restart nginx ```
四、核心功能验证与故障排查
4.1 系统访问与后台登录
打开浏览器,访问 http://你的服务器IP。应能看到数字档案馆系统首页。访问 http://你的服务器IP/admin,使用createsuperuser步骤创建的管理员账号登录,进入后台管理界面。
4.2 常见部署故障点排查
- 502 Bad Gateway:检查Gunicorn服务状态 sudo systemctl status gunicorn-archive。确认/opt/digital-archive-system/archive.sock文件是否存在且权限正确(所属用户组应为www-data)。
- 静态文件404:检查Nginx配置中的alias路径是否正确,以及collectstatic命令是否成功执行。检查/var/www/digital-archive/static/目录下是否有文件。
- 数据库连接失败:检查settings.py中的数据库密码是否正确,以及MySQL用户archive_user是否拥有对digital_archive数据库的权限。
4.3 首次使用配置
登录后台后,依次完成以下操作,系统即可投入使用:
- 在“用户”模块,为档案馆工作人员创建账户并分配相应权限组(如“档案录入员”、“档案审核员”)。
- 在“元数据标准”模块,根据《文书类电子档案元数据方案》等国家标准,定义档案的元数据字段。
- 在“档案分类”模块,建立符合本单位实际的档案分类体系(如年度-机构-保管期限)。
- 在“存储策略”模块,配置档案文件的存储路径和备份规则。
完成以上步骤后,工作人员即可通过前台界面进行档案的录入、查询、借阅和统计。系统已具备基础运行能力,后续可根据实际业务需求,在后台进一步配置工作流、日志审计等高级功能。