医药企业数字档案馆系统本地部署与基础功能搭建实操指南
一、环境准备
1. 安装Docker及Docker Compose
在CentOS7系统(其他Linux发行版可替换对应命令)中执行以下命令,完成容器环境部署:
卸载旧版本Docker
sudo yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
安装依赖工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加官方Docker仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装稳定版Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io
启动Docker并设置开机自启
sudo systemctl start docker && sudo systemctl enable docker
安装Docker Compose v2.20.2
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
二、系统部署配置
1. 编写Docker Compose配置文件
在指定工作目录(如/opt/pharma-archive)下创建docker-compose.yml,内容如下(所有参数可直接复制,仅需修改密码):
version: '3.8'
services:
pharma-archive:
image: pharma-digital-archive:latest
container_name: pharma-archive
ports:
- "8080:8080"
volumes:
- ./archive-data:/app/data
- ./backup:/app/backup
environment:
- DB_HOST=db
- DB_USER=pharma_user
- DB_PASSWORD=Pharma@Corp2024!
- DB_NAME=pharma_archive
depends_on:
- db
db:
image: mysql:8.0
container_name: pharma-db
environment:
- MYSQL_ROOT_PASSWORD=Root@Corp2024!
- MYSQL_DATABASE=pharma_archive
- MYSQL_USER=pharma_user
- MYSQL_PASSWORD=Pharma@Corp2024!
volumes:
- ./db-data:/var/lib/mysql
volumes:
archive-data:
backup:
db-data:
核心修改点:将所有密码替换为企业内部合规强密码,不得使用默认值,长度≥12位,含大小写、数字及特殊字符。
2. 启动系统服务
在docker-compose.yml所在目录执行启动命令:
sudo docker-compose up -d
检查服务状态,确保所有容器均为Up:
sudo docker-compose ps
三、系统初始化与合规配置
1. 管理员账号初始化
在企业内网中访问服务器IP:8080,进入初始化页面:
- 填写管理员用户名:admin
- 填写初始化密码:符合企业合规要求(≥12位,含三类字符)
- 点击【确认初始化】,完成后用账号密码登录系统
2. 医药档案分类配置
进入系统后,点击【档案管理】→【分类设置】,添加以下强制分类(符合医药监管要求):
- 药品注册档案
- 药品生产工艺档案
- 临床试验档案
- 质量检验档案
- 供应商资质档案

权限配置:针对不同岗位分配对应分类的查看/编辑权限,质量部仅开放质量检验档案权限,注册部负责药品注册档案维护。
四、安全与备份配置
1. 定时自动备份配置
在archive-data目录下创建启动脚本start.sh,内容:
!/bin/bash
每日凌晨2点执行备份
0 2 /usr/bin/docker exec pharma-archive /app/backup.sh >> /app/backup/backup.log 2>&1
启动应用服务
npm start
给脚本添加执行权限:chmod +x ./archive-data/start.sh
修改docker-compose.yml中pharma-archive服务的command字段,替换为command: ["./start.sh"],重新部署:sudo docker-compose up -d
2. 内网安全访问限制
执行以下iptables命令,仅允许企业内网IP段访问8080端口(将192.168.1.0/24替换为企业实际内网段):
sudo iptables -A INPUT -p tcp --s 192.168.1.0/24 --dport 8080 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 8080 -j DROP
sudo service iptables save
禁止公网直接开放8080端口,如需远程访问需通过企业VPN。
五、日常维护操作
1. 系统更新
拉取最新镜像并重启服务:
sudo docker-compose pull pharma-archive
sudo docker-compose up -d
2. 日志查看
实时查看系统运行日志:sudo docker-compose logs -f pharma-archive
3. 数据迁移
将当前部署目录(含archive-data、db-data、backup文件夹)复制到新服务器,在新服务器执行:sudo docker-compose up -d,完成数据迁移。