在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 安装就好 。
在windows 上编译部署Rap2的更多相关文章
- 在Mac/Linux/Windows上编译corefx遇到的问题及解决方法
这两天尝试在Mac/Linux/Windows三大平台上编译.NET跨平台三驾马车(coreclr/corefx/dnx)之一的corefx(.NET Core Framework),结果三个平台的编 ...
- [ZZ] 在windows上编译Mesa3d opengl32库
在windows上编译Mesa3d opengl32库 cheungmine http://blog.csdn.net/ubuntu64fan/article/details/8061475 Mesa ...
- 利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl
利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl 首先mingw的环境搭建,务必遵循下文: http://blog.csdn.net/ubuntu64fan/ar ...
- Zabbix agent 在windows上安装部署
Zabbix agent 在windows上安装部署 1.下载与解压 地址: http://www.zabbix.com/downloads/2.4.4/zabbix_agents_2.4.4.win ...
- 在windows上编译wireshark源代码
终于在windows上成功编译了wireshark源代码,个中酸辛,都是泪..只能说要多试! windows上编译wireshark共用到三个东西:wireshark源代码.python.cygwin ...
- Primecoin在windows上的部署和启动服务
Primecoin在windows上的部署和启动服务: 一.从官方获得Primecoin的windows版安装包: 二.一路像安装客户端一样的安装: 三.安装成功后它会自动弹出客户端运行,同步数据, ...
- jenkins在windows上自动化部署.Net(.Net Core)项目
前言 什么是持续集成呢?Continuous integration(CI).持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成. ...
- 在windows上编译MatConvNet
有个BT的要求,在windows上使用MatConvNet,并且需要支持GPU. 费了些力气,记录一下过程(暂不支持vl_imreadjpeg函数) 在这里下载MatConvNet,机器配置vs201 ...
- 如何在 Windows上编译Objective-C
Objective-C现在几乎已经变成了苹果的专利了,可以直接在苹果的Xcode上编译Objective-C程序,但是在Windows平台下的编译工具就寥寥无几了,本身这种语言用的人就不是很多.今天在 ...
随机推荐
- .Net锦囊-C#,.Net发送邮件三种方法…
最近公司由于一个R&I项目的需要,用户要求在购买产品或出货等一些环节,需要发送邮件提醒或者说每周一让系统自动采集数据发送一封E-mail,因此我也就找来相关资料,写了一个Demo分享给大家,大 ...
- 《SpringBoot揭秘 快速构建微服务体系》读后感(二)
最简单的springBoot应用 package com.louis.test; import org.springframework.boot.SpringApplication; import o ...
- js的prototype的详解(1)
一.什么是JavaScript中对象的prototype属性 JavaScript中对象的prototype属性,是用来返回对象类型原型的引用的.我们使用prototype属性提供对象的类的一组基本功 ...
- POJ 2348 Euclid's Game (博弈)
题意:给定两个整数,两个人轮流操作,每次可以用较大数减去较小数的整数倍,当一个数变成0时,则结束,问谁会胜. 析:很明显如果 a == b 那么就可以直接结束了,那么如果 a > b我们可以交换 ...
- sqlserver2012——逻辑运算符
ALL 如果一组的比较都为TRUE,则结果为true ANY如果玉足比较中任何一个为true,则结果为true AND 两个boll都为TRUE,则结果为TRUE OR 两个BOLL任何一个TRUE, ...
- Swoole HTTP 的应用
目录 概述 代码 小结 扩展 概述 这是关于 Swoole 学习的第四篇文章:Swoole HTTP 的应用. 第三篇:Swoole WebSocket 的应用 第二篇:Swoole Task 的应用 ...
- IT兄弟连 Java语法教程 Java语言的其他特性
Java语言中除了非常重要的跨平台特性外,还有如下几个关键特性: ● 语法简单易学 Java语言的语法简单明了,容易掌握,而且是纯面向对象(OOP)的语言,Java语言的简单性主要体现在以下几个方面 ...
- ps 命令参数解释
转自:https://www.cnblogs.com/fps2tao/p/7692482.html A 显示所有进程(等价于-e)(utility)-a 显示一个终端的所有进程,除了会话引线-N 忽略 ...
- mycat学习日记:全局sequence
mycat分库分表的情况下,原生mysql的自增长主键无法满足主键全局唯一这个要求.看了MYCAT社区从零开始的一篇博客,加上自己的实践,大概总结一下. 目前mycat对于全局sequence主要提供 ...
- ASM 磁盘组的的scrip
之前经常用如下方式进行查询:步骤 1 以oracle用户登录系统.步骤 2 执行如下命令改变ORACLE_SID环境变量.$ export ORACLE_SID=+ASM1[1或者2]需要通过ps - ...