这里是 没有烦恼的猫猫 一个佛系的java程序员
项目上线 以及部署到服务器
大概的部署流程
小公司
- 使用maven打Jar包 SpringBoot
- 准备Sql脚本
- 将文件上传至服务器 (filezilla上传工具。。。一些自动化工具)
- 执行DB,执行Sql脚本
- 部署脚本(用于执行我们的微服务) 部署以及分配内存大小
- 。。。
中大型公司
- 上线计划,给相关干系人邮件发送信息
邮件内容通常是:
- 上线了哪些功能
- 可能的风险
- 上线步骤,上线失败的回滚方案。上线是否涉及数据变迁等
- 上线后谁去验证收,希望哪些部门或人配合等
- 上线时间(根据业务情况,通常下班4点之后不上线,周五下午不上线)
- 坐等领导审批
- 提交代码
- 准备Sql脚本,经过层层审核
- 执行DB
- jenkins部署,集成了Docker k8s等
- 验收、失败回滚
**关于部署脚本:**我们可以自己写一个shell脚本(sh后缀的文件),写一些功能帮我们执行微服务 如何执行?sh xxx.sh
大概的一个执行流程
Nginx指向我们的前端页面,然后访问后端的网关,网关在帮我们分发到微服务中去
注意事项
- 在服务器中,我们的微服务运行时。可以使用Ctrl+C退出当前界面(但不会终止微服务的运行),而使用Ctrl+Z可能就打断了服务运行
部署项目到linux服务器
本地代码完成以后,下一步就是打包到服务器上去执行jar包或者war包,接下来就演示一下云服务器上的操作吧。
首先了解下什么是云服务器?
云服务是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法。过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设施的抽象。云服务指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。它意味着计算能力也可作为一种商品通过互联网进行流通。
一、前期准备工作
1.首先我们需要将JDK安装到服务器上
2.如果项目还用到了其他环境也可以安装上去将其连接上
3.云服务器这边也要安装了JDK和MySQL,怎么安装我就不演示了
4.数据库安装完成,我们可以使用数据库工具Navicat Premium连接
5.使用的云服务器公网IP地址连接上,然后创建数据库和表
6.阿里云服务器需要在安全组,配置开放常使用的端口,如:80、22、3306等….
如今镜像拉取才企业里面用的也是挺多的,但是这里不建议小白去使用镜像来装环境,可以按照上面一步一步的进行安装,以后熟练了可以使用docker来进行拉取。
二、项目配置
1.项目中application.yml配置,将数据库连接地址改成云服务器公网IP
2.我们就可以将写好的项目进行打包了
3.打包在我们IDEA右侧->Maven->Lifecycle->package
4.双击package进行打包
5.打包成功后,我们找到项目存放路径下有个target
文件夹,打开就可以看到我们刚才打包好的Jar包了
6.我们可以先用cmd命令在本地启动运行一下,没问题就可以发送到服务器上。
7.启动命令 java -jar 项目名称
8.没问题以后,使用xftp工具将我们打包好的项目jar发送到服务器上
9.没有xftp的,可自行在百度下载,也可以用其他工具
10.云服务器存放路径,根据自己的要求来存放
11.使用xshell工具连接服务器,切换到我们存放项目路径
12.启动项目 java -jar 项目名 跟我们的cmd命令启动是一样的
13.启动成功,本地打开浏览器进行访问 ip+端口