前后端项目手动部署至服务器

前后端项目手动部署至服务器,第1张

前后端项目手动部署至服务器 1. 在服务器上配置环境

需要安装JDK、Mysql、Nginx
可以手动安装以上环境,也可以先安装docker后再拉镜像安装以上环境

2.安装完mysql后,在navicat中连接远程数据库

若连接失败,若是使用docker安装的,则排查方式:查看docker中mysql容器运行情况

3.更改nginx安装目录下的conf文件夹下的nginx.conf配置文件

第一行,将user设置为root


配置代理路径

使nginx配置文件生效

/usr/local/nginx/sbin/nginx -s reload

扩展:启动nginx

在/usr/local/nginx/sbin文件夹下  ./nginx
4. 在主分支拉最新代码并跑通,需要注意配置文件(是否为多环境) 5.前端打包

在前端项目文件夹xxxxx文件夹下执行命令行:

npm run build

此时会在xxxxx文件夹中生成dist文件夹

6.后端打包

在IDEA的项目结构中cae-back文件夹右键选择RunMaven---->cleaninstall

如果右键没有RunMaven,自己去安装插件或者可以在项目右侧Maven中先clean后install也是一样的

扩展:maven cleaninstall/install/package的区别 自己查阅

此时会在target文件夹中生成打包好的jar包

7. XShell连接服务器 8.停止之前正在运行的服务

可用的命令

netstat -tunlp    查看进程
netstat -tunlp | grep 9090    查看端口为9090的进程,可以查询端口为9090的进程的进程PID

扩展举例:netstat -nap | grep 31994  根据进程id:31994查看进程占用端口,查看对应端口为9090

ps -ef | grep 31994 据进程id查看进程信息,查看进程id为31994的进程信息,运行的是我们的jar包  
kill -9 31994 根据进程id杀死进程,杀死进程id为31994的进程
9.使用文件传输工具Xftp上传前后端打好的包

将打好的后端jar包上传至/root/后端项目文件夹,同时可以将服务器中已存在的上一个jar包后面写上日期变成不可执行文件从而备份

将前端打包好的dist文件夹上传至/root/前端文件夹中,将服务器中已存在的dist文件夹备份或删除,这里的路径一定要匹配Nginx配置文件nginx.conf中配置的路径!!!

10.启动服务

在后端文件夹下执行命令:

nohup java -jar xxxxxxxx.jar &

nginx应该已经配置好了,不需要动

浏览器查看服务器ip地址是否部署成功,部署结束。 11.错误排查

1)首页图片不显示,或其他静态资源不显示
问题原因及解决方式:重新拉新代码,本地跑通后,重新打包前端。

(2)线上接口请求不到,报超时错误(已排查,之后出现此问题的可能性比较小)
问题原因及解决方式:nginx配置发生错误,查看nginx日志并更改配置文件。

使nginx配置文件生效
/usr/local/nginx/sbin/nginx -s reload

扩展:启动nginx
在/usr/local/nginx/sbin文件夹下  ./nginx

(3)线上报500等5开头的内部错误
问题原因及解决方式:服务器运行jar包发生了错误,发生什么解决什么

查看运行jar包的日志
在cae文件下: tail -fn 500 nohup.out   查看前500行日志
			tail -n 500 nohup.out   查看后500行日志

(4)线上其他问题
可以尝试重启docker容器或查看linux服务器的文件系统的磁盘空间占用情况

(5)后期可以优化的地方
配置文件多环境化
服务器部署命令脚本

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5612070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存