RAP2 一个可视化接口管理工具, 需要部署前后端服务
后端数据API服务器 基于Koa + MySQL
前端静态资源 基于React
部署前准备:
- 服务器环境 Centos7, IP地址 192.168.1.18
- Node.js
- Redis
- MySQL
- Git
后端服务部署
- 获取源代码 git clone https://github.com/thx/rap2-delos.git
- 创建数据库 CREATE DATABASE IF NOT EXISTS rap2 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
- 初始化 npm install
配置环境 src/config/config.prod.ts (dev 和 local 环境直接配置固定值即可)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21#端口配置
serve: {
port: (process.env.EXPOSE_PORT && parseInt(process.env.EXPOSE_PORT)) || 8181,
}
#数据库连接配置
db: {
dialect: 'mysql',
host: process.env.MYSQL_URL || 'localhost',
port: (process.env.MYSQL_PORT && parseInt(process.env.MYSQL_PORT)) || 3306,
username: process.env.MYSQL_USERNAME || 'root',
password: process.env.MYSQL_PASSWD || 'root',
database: process.env.MYSQL_SCHEMA || 'rap2',
}
#Redis配置
redis: {
host: process.env.REDIS_URL || 'localhost',
port: (process.env.REDIS_PORT && parseInt(process.env.REDIS_PORT)) || 6379,
auth_pass: process.env.REDIS_PWD || '123456'
}编译 npm run build
- 初始化数据库表 npm run create-db
- 执行 mocha 测试用例和js代码规范检查 npm run check
- 生产模式 npm start
- 访问 192.168.1.18:8181, 提示 RAP2后端服务已启动,请从前端服务(rap2-dolores)访问. RAP2 back-end server is started, please visit via front-end service (rap2-dolores).
前端服务部署
- 获取源代码 git clone https://github.com/thx/rap2-dolores.git
- 初始化 npm install –unsafe-perm
配置后端服务器地址 src/config/config.prod.js
1
2
3
4
5
6
7module.exports = {
serve: 'http://192.168.1.18:8181',
keys: ['some secret hurr'],
session: {
key: 'koa:sess'
}
}编译 npm run build
- 服务器配置路由至 build 文件夹作为静态服务器即可, 这里配置的是 8282 端口
- 访问 192.168.1.18:8282
- 添加伪静态文件 .htaccess
1
2
3
4
5
6
7
8<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.html [L]
</IfModule>