所有资源均可直接通过给出的地址获取,无需自行搜索:
提前准备服务器公网IP、自定义的MySQL root账号密码、已备案的域名(可选)、ICP备案号。
以下命令均在服务器root账号下执行: ``` 下载安装包 wget https://nodejs.org/dist/v16.18.0/node-v16.18.0-linux-x64.tar.xz 解压 tar -xvf node-v16.18.0-linux-x64.tar.xz 配置全局软链接 ln -s /root/node-v16.18.0-linux-x64/bin/node /usr/bin/node ln -s /root/node-v16.18.0-linux-x64/bin/npm /usr/bin/npm 验证安装,输出版本号即为成功 node -v npm -v ```
按顺序执行以下命令: ``` 卸载系统自带mariadb rpm -qa | grep mariadb | xargs rpm -e --nodeps 下载解压安装包 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz mv mysql-8.0.30-linux-glibc2.12-x86_64 /usr/local/mysql 创建数据目录和用户 mkdir /usr/local/mysql/data useradd mysql && chown -R mysql:mysql /usr/local/mysql 初始化数据库 /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql ``` 初始化结束后控制台会输出临时密码,一定要复制保存,后续登录需要使用
创建配置文件/etc/my.cnf,直接复制以下内容: ``` [mysqld] basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/tmp/mysql.sock user=mysql port=3306 max_connections=1000 max_connect_errors=1000 character-set-server=utf8mb4 default-storage-engine=INNODB default_authentication_plugin=mysql_native_password [client] port=3306 default-character-set=utf8mb4 socket=/tmp/mysql.sock ```
继续执行后续命令: ``` 启动MySQL服务 systemctl start mysqld 登录数据库,输入刚才保存的临时密码 mysql -uroot -p 修改root密码,将引号内内容替换为你自己设置的密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的自定义密码'; 创建系统专用数据库 CREATE DATABASE archive_sign DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 退出数据库 exit; ```
按顺序执行命令: ``` 安装解压工具 yum install -y unzip 下载源码 wget https://gitee.com/oswork/archive-training-sign/releases/download/v1.0.0/archive-sign-v1.0.0.zip 解压 unzip archive-sign-v1.0.0.zip cd archive-sign-v1.0.0 安装依赖 npm install --registry=https://registry.npmmirror.com ```

修改数据库配置文件config/database.js,直接复制替换内容,密码填你刚才设置的MySQL密码: ``` module.exports = { dialect: 'mysql', host: '127.0.0.1', port: 3306, username: 'root', password: '你的MySQL密码', database: 'archive_sign', timezone: '+08:00' } ```
修改系统基础配置文件config/system.js: ``` module.exports = { port: 80, uploadDir: './public/upload', sessionSecret: '自定义一串随机字符作为加密密钥', siteName: 'XX单位档案培训报名系统', icp: '你的ICP备案号' } ```
导入初始数据并启动服务: ``` 导入表结构和默认数据 npx sequelize-cli db:migrate && npx sequelize-cli db:seed:all 安装进程守护工具 npm install pm2 -g --registry=https://registry.npmmirror.com ln -s /root/node-v16.18.0-linux-x64/bin/pm2 /usr/bin/pm2 启动服务并设置开机自启 pm2 start index.js --name archive-sign pm2 startup && pm2 save ``` 初始管理员账号为admin,密码为123456,登录后务必第一时间修改
访问http://你的服务器公网IP/admin,登录管理员账号,依次完成以下配置:
点击【培训管理】-【新增培训】,填写必填项:
进入【数据管理】-【导出设置】,勾选需要导出的字段:姓名、身份证号、单位、报名时间、审核状态、考核成绩,设置导出格式为Excel,系统默认脱敏身份证号中间8位,符合数据安全要求。
按顺序模拟用户操作验证功能: