网站部署踩坑

由于最近在学习 SpringBoot 以及 Vue 所以想找一个项目练习一下,顺便搭一个个人博客进行练习

本篇文章比较偏向日志,如果需要具体的解决方法可以搜索其他文章

0. 项目打包

其实这一点没什么可以多说的 springboot 项目在 idea 中执行 package ,vue 项目在 webstorm 中执行 npm run build

springboot 项目打包生成[target].jar,vue 项目打包生成dist文件夹
得到三个文件[夹]后(vue 项目是前台和后台管理两个项目)准备部署

1. 环境准备

前端项目需要用nginx进行转发,后台 api 的 springboot 项目使用mysql数据库以及redis缓存,服务器使用阿里云,图床使用七牛云

1.1 设置七牛云

这一项应该在对后端打包前完成
七牛云注册后,创建实例会赠送 10G 的免费流量,创建实例并将测试域名、accessKey、secretKey 以及 实例名称复制到 springboot 的相关设置项即可。

使用测试域名只有 30 天的有效期,由于我的域名暂时还未过审,只能先使用测试域名

1.2 设置阿里云

首先要有钱买一个服务器(我也只能用最便宜的学生优惠机了)
远程 ssh 连接实例,安装 mysql 设置用户名和密码,我就简单的设置了一个密码用户直接用 root
安装 redis ,我安装的时候不停报错,还是要搜索一下安装方法,不过我也不做过多的配置就直接用了,即使这样在安装的时候各种环境变量也快把我弄疯了。
安装 nginx,做前端的请求转发,这里安装倒是没什么问题,但是在配置的时候,由于我想在一台服务器上安装两个项目而且想做到后台界面是前端的一个子界面即

http://ip/              http://ip/backend

的效果,因此又折腾了一堆前后访问的配置。

2. 部署

把两个前端项目的 dist 以及后端打包的 jar 上传,在nginx中配置前端的项目路径,用命令nginx -s reload重启 nginx; 用java -jar [target].jar &后台运行打包好的 Java 程序

3. 总结

本身这篇文章是想对我折腾了几个星期的部署做一个小记录,可能没啥内容,如果时间允许,后期我会针对每一个小细节都写一篇记录一下(主要是怕忘……)。

TMI

  1. 如果你看过原项目一定知道原项目还实现了搜索功能,但是我把它去掉了,原因很简单,不是我不想写,而是服务器不允许打开ElasticSearch,如果打开之后后端和搜索服务一起被杀掉了,2G 小内存伤不起啊
  2. 不是我不知道mysql redis ElasticSearch RabbitMQ nginx 这些用分布式部署就解决了,是我的荷包不允许我再开实例了。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容