在windows 上编译部署Rap2
引言
rap2 使用了前后端分离的架构。
后端源码地址:rap2-delos 基于Koa + MySQL
前端源码地址:rap2-dolores 基于React
首先下载源码,通过git或者直接根目录下载解压都可以,自行解决下载速度慢的问题。
安装需要的环境
Node.js 8.9.4+ 安装最新windows版
MySQL 5.7+ 不要用最新版,会有问题,踩坑过
Redis 4.0+ 这个实测3.2也没问题 ,window版下载地址
提供默认端口无密码的redis服务。
安装后端站点
创建数据库
在全局安装pm2 和 typescript
配置mysql,redis 数据库链接配置
在/src/config/config.xxx.js 中可以找到相应配置,根据实际情况填写。
初始化
执行
可能会出现差一些包 ,根据包名,都可以使用 npm install xxxx 来安装。
编译
初始化数据库表,填充基础数据
执行mocha测试用例和js代码规范检查
启动服务
启动服务之前检查下8080端口是否被占用,当然也可以在/src/config/config.xxx.js 修改端口
(iis上有iisnode 可以让iis托管node程序,但是没有成功配置出来 ,所以目前还是用的pm2 来承载运行这个程序)
方法2: 通过nssm 执行发布后dist目录的 node dispatch.js ,安装成windows服务也可以 ( 2018.07.20补充)
安装前端站点
这是一个纯静态的站点,只需要先打包出来,然后挂在iis上就行。
初始化
在下载源码包的根目录执行
配置前端站点所使用的服务端端地址
可以在/src/config/config.prod.js(生产模式配置文件) 中找到
打包程序
在下载源码包的根目录执行
执行成功的话,将会在根目录生成一个build文件夹,这个里面就是发布好的站点文件。
部署站点
使用iis
使用build文件夹 新建一个站点。需要,这个时候已经可以看到效果了, 但是当用户在非根目录刷新页面就会出现404页面。
这里需要特殊处理下:
方法1: 在iis上配置,选中站点 -》功能视图下的 错误页 -》编辑404状态码-》改成在此网站上执行\index.html 。
方法2: 使用urlrewrite 功能, 将所有请求都重写到\index.html。
使用server命令
安装server命令 npm install -g server
运行 : serve -s ./build -p 80
这也是官方给出的方案
结语
安装过程中也不是一帆风顺,大多出现在执行 npm命令 ,基本都是缺少包 或者命令 ,然后使用 npm install xxxx 安装就好 。
转载请遵循此协议:署名 - 非商业用途 - 保持一致
并保留此链接:http://fejerry.cnblogs.com/