You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rap2-delos/README.md

142 lines
3.8 KiB
Markdown

7 years ago
# RAP2-DELOS CE version (back-end data API server)
7 years ago
7 years ago
[![Build Status](https://travis-ci.org/thx/rap2-delos.svg?branch=master)](https://travis-ci.org/thx/rap2-delos)
7 years ago
7 years ago
RAP2 is a new project based on [RAP1](https://github.com/thx/RAP). It has two components:
7 years ago
RAP2是在RAP1基础上重做的新项目它包含两个组件(对应两个Github Repository)。
7 years ago
7 years ago
* rap2-delos: back-end data API server based on Koa + MySQL [link](http://github.com/thx/rap2-delos)
* rap2-dolores: front-end static build based on React [link](http://github.com/thx/rap2-dolores)
7 years ago
7 years ago
* rap2-delos: 后端数据API服务器基于Koa + MySQL[link](http://github.com/thx/rap2-delos)
* rap2-dolores: 前端静态资源基于React [link](http://github.com/thx/rap2-dolores)
7 years ago
### Resources
7 years ago
* [Official Site 官网: rap2.taobao.org](http://rap2.taobao.org)
* DingDing Group ID 钉钉群: 11789704
7 years ago
* [热心网友提供的部署文档,供参考](https://github.com/thx/rap2-delos/issues/119)
7 years ago
7 years ago
## Deployment 部署
7 years ago
### enviaronment requirements 环境要求
* Node.js 8.9.4+
* MySQL 5.7+
* Redis 4.0+
7 years ago
### development 开发模式
7 years ago
7 years ago
#### install mysql and redis server
#### 安装MySQL和Redis服务器
7 years ago
请自行查找搭建方法mysql/redis配置在config.*.ts文件中在不修改任何配置的情况下
redis会通过默认端口 + 本机即可正常访问确保redis-server打开即可。
#### start redis-server
#### 启动redis-server
```sh
redis-server
```
7 years ago
后台执行可以使用nohup或pm2这里推荐使用pm2下面命令会安装pm2并通过pm2来启动redis缓存服务
```bash
7 years ago
npm install -g pm2
npm run start:redis
```
7 years ago
#### create database at first
#### 先创建创建数据库
```bash
7 years ago
mysql -e 'CREATE DATABASE IF NOT EXISTS RAP2_DELOS_APP DEFAULT CHARSET utf8 COLLATE utf8_general_ci'
7 years ago
```
7 years ago
7 years ago
#### initialize
#### 初始化
```bash
7 years ago
npm install
7 years ago
```
7 years ago
7 years ago
confirm configurations in /config/config.dev.js (used in development mode)
确认/config/config.dev.js中的配置(.dev.js后缀表示用于开发模式)
7 years ago
7 years ago
#### Install and compile TypeScript code
#### 安装 && TypeScript编译
```bash
npm install -g typescript
npm run build
7 years ago
```
7 years ago
7 years ago
#### initialize database tables
#### 初始化数据库表
```bash
7 years ago
npm run create-db
7 years ago
```
#### execute mocha test cases & js code check
#### 执行mocha测试用例和js代码规范检查
```bash
7 years ago
npm run check
7 years ago
```
7 years ago
7 years ago
#### start server in development mode, watch & restart automatically
#### 启动开发模式的服务器 监视并在发生代码变更时自动重启
```bash
7 years ago
npm run dev
```
7 years ago
### production 生产模式
7 years ago
7 years ago
```sh
7 years ago
7 years ago
# 1. change server config in /config/config.prod.js
# 1. 修改/config/config.prod.js中的服务器配置
# 2. start server in production mode
# 2. 启动生产模式服务器
7 years ago
npm start
7 years ago
```
7 years ago
7 years ago
## Dockerfile (本地源码通过docker运行
```sh
# 1. 安装docker
# 2. 修改docker-compose.xml中的配置。默认使用mysql和redis的镜像。可修改为自己的配置
# 3. 通过源码运行。
docker-compose up -d
# 4. 第一次运行需要手动初始化mysql数据库。分别执行以下命令
docker exec -it rap2-delos sh
// 登录成功以后执行:
node scripts/init
// 执行完毕后退出
exit
// 如果仍然有问题,重新启动
docker-compose down
// 重新运行
docker-compose up -d
```
7 years ago
## Author
* Owner: Alimama FE Team
* Author:
* Before v2.3: all by [@Nuysoft](https://github.com/nuysoft/), creator of [mockjs](mockjs.com).
* v2.4+ / CE version: [Bosn](http://github.com/bosn/)(creator of [RAP1](https://github.com/thx/RAP)) [Nuysoft](https://github.com/nuysoft/)
* We are looking for more and more contributors :)
### Tech Arch
* Front-end (rap2-dolores)
* React / Redux / Saga / Router
* Mock.js
* SASS / Bootstrap 4 beta
* server: nginx
* Back-end (rap2-delos)
* Koa
* Sequelize
* MySQL
* Server
* server: node