**说明:**服务器上有MySQL和jdk环境,MySQL要开放远程访问,因为我是jar包部署,所以可以不用有tomcat。
1.修改程序
打开properties或者是yml文件,修改以下位置,如果有用到redis等也要修改
之后在pom.xml中的中加入打包工具如下:
之后用maven打包:
如果在package的时候报错,可以去看一下环境变量中配置的jdk和项目中使用的是否相同。
打包之后会生成xxx.jar如下:
2.运行jar包
将这个jar包上传到服务器如下:
jar包的名字可以修改,之后进入目录如下:
运行jar包如下:
nohup java -jar xxx.jar &
//此处意思是将运行的jar包的日志存放到nohup中,如果没有nohup会自动创建。
//&表示在后台运行,如果没有的话当你退出这个连接的时候就会停止运行。
//查看端口对应的服务是否开启
netstat -aplnt
//如果端口被占用也可以使用下面这个,使用其他的端口号
Java -jar ... --server.port=端口号
//查找xxx.jar的进程
ps -ef |grep xxx.jar
//杀掉进程
kill -9 进程号
上面两个一起使用的时候可以用这个代替:kill -9 `ps -ef | grep xxx.jar | grep -v 'grep' | awk '{print $2}'`
之后查看nohup.out日志如下:
运行成功!!!
如果不是的话就说明运行失败要去找错了。
3.将vue页面与后台的api建立连接
找到nginx进入,进入conf文件夹,编辑nginx.conf如下:
之后你要加入下图这段,你唯一要修改的就是proxy_pass的内容,将其改为你部署的后台的主机的IP和编写后台api时所使用的端口,如下:
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 跨域到后台访问端口
proxy_pass http://ip:端口/;
}
之后重启nginx:
cd ../sbin
./nginx -s reload
之后就可以访问了!!!
如果访问不了可以去防火墙开下端口试试。
至此,部署全部结束