springboot+vue+nginx打包部署到服务器

准备工作
阿里云服务器,安装nginx,jdk,MySQL
1.springboot的打包,点击图片中的按键,既可以打包成jar包,打包方式有两种,还可以打包成war包,war的运行需要依赖tomcat,我们这里采用jar的,nginx代理
在这里插入图片描述
打包成功后在项目结构这里可以找到打包后的jar包
在这里插入图片描述

2.vue项目打包
打包前需要修改两处地方,避免打包的时候出现样式找不到,分别如下图在这里插入图片描述
在这里插入图片描述
然后在终端运行命令 npm run build ,接着在项目的结构会生成dist文件夹
在这里插入图片描述
将文件夹拷贝到服务器的某个地方就可以了

如果项目项目后台也是在本地开发的话,axios也需要修改,修改成服务器的地址
在这里插入图片描述
我的跨域是设置在了后台,如果你出现跨域失败的话,尝试修改这里
在这里插入图片描述

以后项目的打包到这里结束了。

3.服务器的部署
在你jar存放的同一个路径下,配置一个jar启动的文件,文件名以.sh结尾,我这里是startup.sh,将下面的参数Name改成你jar包的名字

declare Name
Name=xxx-0.0.1-SNAPSHOT.jar 
echo "This is your filename: $Name"

if [ "$(ps -ef |grep "$Name" |grep java |awk '{print $2}')" == "" ] 
then
	echo "Start execution"
else
	ps -ef |grep "$Name" |grep java |awk '{print $2}' |xargs kill
	if [ $? -ne 0 ]
            then 
	        echo "command return: "$?
	        echo "Kill faild! "
	        exit 4
            else
	        echo "command return: "$?
	        echo "The old process has been Killed!"
        fi
fi

#启动程序并后台运行
nohup java -Xbootclasspath/a:conf -jar $Name &

运行成功后会生产nohup.out文件,可以查看jar的运行情况,也可以在最最后面的命令将输出的日志指定到自己的文件中

4.nginx的主要配置

server {
        listen       80;
        server_name  127.0.0.1:8080;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root /home/admin/web/;
            index  index.html index.htm;
        }
	
	#代理的接口,即jar运行的端口
	location /study/ {
	    proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:8001/;
	}
	
	#前端页面的部署代理
	location /web/ {
	    root /home/admin/;
	    index index.html index.htm;
	    autoindex on;
	}

接着重启nginx,切换到sbin目录下 ./nginx -s reload 即可
在网页输入
在这里插入图片描述
到这里就大功告成了,有问题可以私信我,我会及时回复的。
—菜鸟成长记


版权声明:本文为weixin_43793914原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。