连接服务器
首先使用FinalShell工具连接到服务器来安装宝塔面板
安装命令:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
安装过程中有需要确认的地方敲回车,或者输入y再敲回车即可。
安装完毕之后会有如下结果,访问链接和账号密码,需要在对应的服务器安全策略中开启提示你放行的端口以便宝塔面板可以正确访问。
访问宝塔面板
根据上面提供的外网访问路径在浏览器访问宝塔面板
下载软件
分别下载:redis,MySQL5.7,nginx, tomcat-8
创建站点
创建站点的前提是需要有域名,且域名是通过备案的,将域名解析到正在使用的这个服务器上。
这里以创建PHP项目为例,后面直接用shell脚本来启动Java项目
以上面的方法分别创建:平台端,商户端,admin api,front api,h5 等5个站点
如果是创建的站点访问不到可以看看域名解析和80端口是否放行
这样就是创建成功了
MySQL配置
添加MySQL数据库
导入sql
sql的存放路径
导入后可以查看日志看看是否导入成功
使用连接工具测试发现连接不上数据库
这个时候我们需要去安全里面放行3306这个端口,同样的后面会用到redis的6379端口,以及Java项目的服务端口的可以在安全里面去放行
redis配置
给redis设置一个密码
后端部署
- 先在本地配置好yml
注意:admin和front一样的配置,只是端口不一致,admin和front的redis的db是使用同一个
- 打包Java项目
直接在root下clean一下后用install打包
注意:maven版本要3.6,不然会报错
- 上传jar包和素材文件
在admin api站点下上传:admin的jar包、crmebimage和shell脚本
在front api站点下上传:front的jar包、shell脚本
- 修改shell脚本
admin
front
- 启动Java项目
用同样的方式启动front的服务
- 设置反向代理
admin api和front api都需要配置反向代理,设置的端口可以看prod环境的端口
前端部署
- 前端打包
node版本:16.20
npm版本:8.19.4
先用npm install安装依赖,在用npm run build:prod进行打包,用同样的方式打包商户端
- 上传打包后的文件
平台端和商户端一样都是将打包后的dist文件上传到对应的站点目录下
- 设置伪静态
将部署后的管理端打开后发现刷新就报错404,这个时候可以设置一下伪静态,平台端、商户端和移动端都需要配置伪静态
location / {
if (!-e $request_filename){
rewrite ^/(.*) /index.html last;
break;
}
}
- 修改文件上传配置
需要修改文件上传配置不然图片素材不显示
移动端部署
- 设置api后进行打包
- 打包移动端
遇到不是项目成员时可以重新获取一下appid
- 将打包好的h5文件上传到站点目录下
这样管理端和移动端就都部署好了
pc商城的部署可以看这个文档: https://www.crmeb.com/ask/thread/47521