改号宝网站搭建,昆明市环保局建设网站,html网页标题代码怎么写,wordpress 顶部工具文章目录 #x1f343;前言#x1f340;什么是部署#x1f332;环境配置#x1f6a9;数据准备#x1f6a9;程序配置⽂件修改 #x1f384;构建项目并打包#x1f38b;上传Jar包到服务器,并运行#x1f6a9;上传Jar包#x1f6a9;运行程序#x1f6a9;开放端口号 前言什么是部署环境配置数据准备程序配置⽂件修改 构建项目并打包上传Jar包到服务器,并运行上传Jar包运行程序开放端口号 常见问题杀掉进程⭕总结 前言
本篇博文主要内容为如何将本机的Web项目部署到Linux服务器上
什么是部署
我们在⼯作中会涉及到几个环境
开发环境: 开发⼈员写代码用的机器.测试环境: 测试⼈员测试程序使用的机器.⽣产环境(线上环境): 最终项⽬发布时所使⽤的机器.对稳定性要求很⾼.
把程序安装到⽣产环境上,这个过程称为部署.也叫上线
⼀旦程序部署成功,那么这个程序就能被外网中千千万万的普通用户访问到.
换句话说,如果程序有BUG,这个BUG也就被千千万万的⽤⼾看到了.
部署过程⾄关重要,属于程序开发中最重要的⼀环.⼀旦部署出现问题,极有可能导致严重的事故(服务器不可⽤之类的).
为了防⽌部署出错,⼀般公司内部都有⼀些⾃动化部署工具(如Jenkins等).
这里博主使⽤⼿⼯部署的⽅式来完成部署
环境配置
要使程序正常运行,需要保证环境和程序都要正确,我们需要先设置环境
数据准备
准备需要部署到服务器上的web项目所需要的数据库
首先建立我们所需要的数据库
接下这里我们有两种方法来填充里面的数据
建⽴相同的表结构导入相同的数据对原来数据库的数据进行打包放入Linux某一个目录下面然后打开相应的数据库实用如下命令进行导入
source 打包的数据库在Linux里的文件路径程序配置⽂件修改
实际⼯作中,开发环境,测试环境以及⽣产环境的配置都是不⼀样的
⽐如mysql的⽤⼾名和密码
我们可以针对不同的环境,设置不同的配置
构建项目并打包
在本地使用maven进行打包
如果Test代码中有与环境配置相关的操作(⽐如数据库相关的操作),打包会失败,点击下图①处的图标,可以跳过测试 点击clean-package
上传Jar包到服务器,并运行
上传Jar包
直接拖动打好的jar包到xshell窗⼝即可完成⽂件的上传 Xshell可以直接拖动⽂件到窗⼝,达到上传⽂件的⽬的,如果使⽤其他客⼾端,不⽀持⽂件的上传,需要借助lrzsz命令 上传⽂件 sz filename下载⽂件 rz 执行该命令后在弹出框中选择要上传的文件即可,上传的速度取决于网络.
如果执⾏上述命令之后,提⽰ Command ‘XX’ not found ,表⽰当前云服务器未安装lrzsz命令,需要先进⾏安装
安装lrzsz命令如下
apt-get install lrzsz运行程序
运行程序分为两种一种使永久的一种是短暂的
我们现在来看一下短暂的语法如下
java -jar 所导入jar包名字这个命令的运行方式会在你退出终端时就停止
接下来我们看一个永久的运行方式
nohup java -jar 所导入jar包名字 我们还可以通过该命令搭配 把需要输出的内容写到指定⽂件中.这样的操作称为重定向.
举例如下
nohup java -jar blog-0.0.1-SNAPSHOT.jar /logs 成功启动后与你在本机启动web项目的场景是一样的
开放端口号
如果外网需要访问该服务,需要先服务器防火墙开放对应的端⼝号
本着服务器安全的原则云服务器上的端口非必要不开启.
⽐如常见端⼝号:数据库3306,Redis6379,尽可能避免开放,而是采⽤其他⽅式来连接,⽐如配置隧道的⽅式
接下来博主以腾讯云服务器举例:
进⼊防火墙管理页面 添加规则
端⼝号写需要开放的端⼝号,多个端⼝号以逗号分割.
常见问题
⼀个程序的正常运行,需要程序的正确和环境的正确.同样的代码在Windows上可以运行成功,不⼀定在Linux上运⾏成功.
不同的系统对代码的理解和止持是不同的.⽐如Windows系统对MySQL不区分大小写,Linux区分大小写
服务不能正常访问的原因有很多,主要分以下⼏⽅⾯
服务未启动
使⽤ ps -ef|grep java 查看程序是否在运⾏使⽤ 相应的访问界面 看下是否有返回html⻚⾯,
如果有返回,说明程序启动成功了,考虑端⼝未开放
如果未启动成功,需要查看对应的⽇志,根据原因来分析.
数据库不存在表不存在(区分大小写)数据库密码不正确Jdk安装版本不对,或者未安装mysql未设置密码 …
杀掉进程
如果我们需要重启服务,或者重新部署等,都需要先停⽌之前的服务.
查看当前服务的进程 ps -ef|grep java上图35443就是该服务的进程
杀掉进程 kill -9 PID⭕总结
关于《【JavaEE进阶】部署Web项目到Linux服务器》就讲解到这儿感谢大家的支持欢迎各位留言交流以及批评指正如果文章对您有帮助或者觉得作者写的还不错可以点一下关注点赞收藏支持一下