目录
部署项目到云服务器
什么是部署
⼯作中涉及到的"环境"
- 开发环境:开发⼈员写代码⽤的机器.
- 测试环境:测试⼈员测试程序使⽤的机器
- ⽣产环境(线上环境):最终项⽬发布时所使⽤的机器.对稳定性要求很⾼.
把程序安装到⽣产环境上,这个过程称为"部署".也叫"上线".
⼀旦程序部署成功,那么这个程序就能被外⽹中千千万万的普通用户访问到.
换句话说,如果程序有BUG,这个BUG也就被千千万万的用户看到了.
部署过程⾄关重要,属于程序开发中最重要的⼀环.⼀旦部署出现问题,极有可能导致严重的事故(服务器
不可⽤之类的).
并且部署程序后,即使我们关闭电脑,程序依然在远程服务器上运行,用户不分时间段的依旧可以访问
部署云服务器一共有四大步骤:
- 构建数据库
- 修改idea配置项
- 数据打包
- 部署云服务器
- 开放端口号
- 验证程序
一、 创建MySQL数据库
按照之前的数据库建表脚本,在服务器上运⾏,建⽴相同的表结构.
.在云服务器上使用mysql进行操作,创建项目中涉及到的数据库和表结构
二、 修改idea配置项
数据库中云服务器上构建好后,就下来打开idea项目.
- 如果项目中涉及到本地的文件路径,那么他在云服务器上是无法访问到的,把文件上传然后把文件路径修改成要放在的那个服务器那个路径下(pwd操作)
- 然后修改yml配置中的MySQL连接,将数据库名进行修改,我标注的2和3地方要改成你配置的云服务器上的数据库名和密码,标注的地方1不动
三、 数据打包
在本地使⽤maven进⾏打包
- 如果Test代码中有与环境配置相关的操作(⽐如数据库相关的操作),打包会失败,点击下图①处的图
标,可以跳过测试 - 点击clean->package
四、 部署云服务器
- 上传Jar包
直接拖动打好的jar包到xshell窗⼝即可完成⽂件的上传
注:问题:如果执⾏上述命令之后,提⽰ Command 'XX' not found ,表⽰当前云服务器未安装lrzsz
命令,需要先进⾏安装
安装lrzsz
java
apt-get install lrzsz
- 运行程序
java
//运行刚才打包好的jar程序
java -jar blog-spring-0.0.1-SNAPSHOT.jar
运行成功则部署成永久程序,自动运行
java
nohup java -jar blog-spring-0.0.1-SNAPSHOT.jar &
nohup:后台运⾏程序.⽤于在系统后台不挂断地运⾏命令,退出终端不会影响程序的运⾏
五、开放端口号
如果外⽹需要访问该服务,需要先服务器防⽕墙开放对应的端⼝号
以腾讯云服务器举例:
1)进⼊防⽕墙管理⻚⾯
2)添加规则
端⼝号写需要开放的端⼝号,多个端⼝号以逗号分割.
六 、 验证程序
访问项⽬:http://IP:Port/blog_login.html,将原来的http://127.0.0.1:8080/login.html,将IP地址换成公网IP
IP改为云服务器的IP,Port改为项⽬的端⼝号