搭着玩儿 之 接口管理工具rap2本地搭建

接口管理工具rap2本地搭建:
环境准备:centOS7(镜像最小化安装)
概括:
1、安装node9.11+
2、(可选)npm更换阿里镜像cnpm(npm默认镜像特别慢,国外的)
3、安装mysql 5.7+
4、安装rap2所需node模块:node-sass、react-scripts、cross-env、npm-run-all、standard、pm2(pm2是进程管理工具,启动rap2后端使用这个命令进行管理)、serve(这个模块用来做rap2前端服务器或者使用nginx)
5、编译部署rap2-dolores(rap2前端) 启动命令serve -s ./build -p 80
6、编译部署rap2-delos(rap2后端) 启动npm start


可能缺少:
yum install gcc-c++ (g++命令是前端编译需要的)
步骤:
1、安装node9.11+,(二进制包下载方式。其他诸如yum安装、源码编译安装不再尝试)
(1)、 官网下载tar.xz压缩包
https://nodejs.org/zh-cn/download/current/
(2)、解压压缩包
xz -b ***.tar.xz  (xz解压后文件变成.tar,xz命令不存在使用yum install下载)
tar -xvf ***.tar  (解压完成)
(3)、bin目录下执行./node -v查看是否可以使用
(4)、添加到环境变量:
vi /etc/profile


在export PATH的上一行添加如下内容


PATH=$PATH:/usr/local/node-v6.5.0-linux-x64/bin/


编辑完成后按Esc键 然后输入 :wq 按回车保存退出。


执行source /etc/profile 使变量生效。
node -v查看是否添加成功。


2、(可选)npm更换阿里镜像cnpm
(1)、npm install cnpm -g --registry=https://registry.npm.taobao.org
(2)、使用cnpm命令查看是否成功。成功之后使用npm时就可以换成cnpm,两者几乎是完全一样的,cnpm使用的是阿里镜像,速度快。

3、安装mysql 5.7+
(1)、下载mysql源安装包
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm


(2)、安装源
yum localinstall mysql57-community-release-el7-8.noarch.rpm


(3)、安装mysql
yum install mysql-community-server
(4)、启动MySQL、开机自启动
systemctl start mysqld
systemctl enable mysqld
(5)、查看密码
grep 'temporary password' /var/log/mysqld.log
(6)、修改密码
进入mysql窗口:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpass';
(这里mysql要求密码不能太简单,我这里直接将原本的密码多加了一位,不再去修改密码检查配置)
(7)、授权访问
grant all privileges  on *.* to root@'%' identified by "password";


4、安装rap2所需node模块
二选一:
(1)、npm方式安装node-sass、react-scripts、cross-env、npm-run-all、standard、pm2、serve。
npm install node-sass
npm install react-scripts
npm install cross-env
npm install npm-run-all
npm install standard
npm install pm2
npm install serve
安装完成之后模块所带命令会自动软连接到node的bin目录下,因为node的bin目录在环境变量里面,所有这些命令也直接可以全局调用。
(2)、cnpm方式安装
cnpm install node-sass
cnpm install react-scripts
cnpm install cross-env
cnpm install npm-run-all
cnpm install standard
cnpm install pm2
cnpm install serve
cnpm安装完成之后模块所带命令不会自动软连接道node的bin目录下,需要手动找到相应的命令,并添加软连接。
ln -s 模块对应的命令 node的bin目录+命令名称

ln -s /opt/modules/node-v9.11.1-linux-x64/node_modules/node-sass/bin/node-sass /opt/modules/node-v9.11.1-linux-x64/node-sass

ln -s ../node_modules/cross-env/dist/bin/cross-env.js /opt/modules/node-v9.11.1-linux-x64/cross-env.js


ln -s  ../node_modules/npm-run-all/bin/npm-run-all/index.js /opt/modules/node-v9.11.1-linux-x64/npm-run-all


ln -s ../node_modules/pm2/bin/pm2 /opt/modules/node-v9.11.1-linux-x64/pm2


ln -s /opt/modules/node-v9.11.1-linux-x64/node_modules/react-scripts/bin/react-scripts.js /opt/modules/node-v9.11.1-linux-x64/react-scripts


ln -s /opt/modules/node-v9.11.1-linux-x64/node_modules/standard/bin/cmd.js /opt/modules/node-v9.11.1-linux-x64/standard


ln -s /opt/modules/node-v9.11.1-linux-x64/node_modules/serve/bin/serve.js /opt/modules/node-v9.11.1-linux-x64/serve


5、编译部署rap2-dolores(rap2前端)
(1)、下载源代码到centOS7本地
https://github.com/thx/rap2-dolores
(2)、解压
unzip rap2-dolores-master.zip
(3)、initialize 初始化,在rap2-dolores根目录下执行
npm install
(4)、 配置后端服务器的地址。 src/config/config.prod.js(生产模式配置文件)
配置rap2后端的ip和端口,这里可以先写上8080,一会儿启动后端就用8080
(5)、编译React生产包
npm run build
(6)、用serve命令或nginx服务器路由到编译产出的build文件夹作为静态服务器即可(serve即上面安装的serve模块,如果没有安装,也可以直接使用nginx服务器跑build文件夹)
serve -s ./build -p 80
(7)、打开页面访问80端口,因为还没有连接后端,能看到的只有几个不断闪动的点点。


6、编译部署rap2-delos(rap2后端)
(1)、下载源码到本地
https://github.com/thx/rap2-delos/tree/master
(2)、解压
unzip rap2-delos-master.zip
(3)、create database 先创建数据库
mysql -e 'CREATE DATABASE IF NOT EXISTS RAP2_DELOS_APP DEFAULT CHARSET utf8 COLLATE utf8_general_ci'
(4)、初始化
npm install
(5)、src/config/config.prod.ts中的服务器配置
改一下数据库配置,上面创建的RAP2_DELOS_APP一定要能被访问到的。
(6)、编译
npm run build
(7)、initialize database 初始化数据库
npm run create-db(这一步会插入一些测试数据)
    (8)、启动生产模式服务器
    npm start (这里实际上是使用pm2启动了进程)
    关闭后端服务器方式:
    pm2 list 命令看到进程对应id
    然后执行pm2 stop 进程id,就可以关闭服务器
7、前后端都启动成功、并且数据库也能够连通,就可以使用了。
打开页面,直接访问ip(或ip:80)看到登录页面,到数据库拿出一个用户进行登录,登录成功。

你可能感兴趣的:(搭着玩儿)