一.将vue项目打包后生成的dist目录下的文件复制到springboot项目里面
1. 前端vue项目先通过npm run build生成dist目录
其中最需要注意的地方所有页面中的请求都需要改
2.将dist中目录文件放入springboot项目的resources目录下的static文件夹
3.springboot项目打包,生成jar包
这里需要将数据库连接更改,页改为自己的公网 ip
这里打包的时候我还遇到了一个错误:
可以通过以下途径解决:
https://blog.youkuaiyun.com/qq_36669347/article/details/107429413
4. 然后登陆你的阿里云服务器,将jar放到服务器通过 java -jar 项目名 运行jar包即可通过外网访问。
5. 最后一步,springboot生成的jar在阿里云的linux服务器后台一直运行,不会在shell客户端关闭时关闭
方法一:
nohup java -jar test.jar &
//nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
//当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中
//除非另外指定了输出文件。
方法二:
nohup java -jar test.jar >temp.txt &
//这种方法会把日志文件输入到你指定的文件中,没有则会自动创建
nohup磁盘打满问题排查与解决
使用nohup ... & 命令启动服务器后,磁盘满了,服务宕了,然后一步一步排查是哪个文件过大,最终定位到是nohup.out文件过大,占了40G,
df -lh #磁盘容量命令
du -sh #查看当前文件夹大小
du -sh * #查看当前文件夹下所有文件/文件夹大小,当磁盘满了可以从根目录使用该命令一路排查下去,最终定位到最大的文件
另外来说说nohup的问题,都知道nohup可以后台启动服务并且输出日志,问题是不加控制nohup是无限制的输出日志,硬盘占满是早晚的事,笔者百度了一下可以通过以下方式解决
不生成nohup文件:
nohup ./a.sh >/dev/null 2>&1 &
关键在于最后的 >/dev/null 2>&1 部分,/dev/null是一个虚拟的空设备(类似物理中的黑洞),任何输出信息被重定向到该设备后,将会石沉大海
>/dev/null 表示将标准输出信息重定向到"黑洞"
2>&1 表示将标准错误重定向到标准输出(由于标准输出已经定向到“黑洞”了,即:标准输出此时也是"黑洞",再将标准错误输出定向到标准输出,相当于错误输出也被定向至“黑洞”)