很多初入行的小伙伴都不知道到底怎样在公司里面去进行项目部署,很多人一提到Linux就犯怵,因为Linux给我们的感觉就是一个黑黑的窗口,然后敲很多很多的命令...今天我们就来实战部署一下SpringBoot项目和Nacos注册中心。
微信搜索:“每日一试” 或 “每日一面”关注公众号,每日收集大厂面试真题,每天学习新知识!
或扫码关注微信公众号,每日学习新知识!
一:安装并启动Nacos
1、官网下载linux版本nacos
官网地址:https://nacos.io/zh-cn/index.html
2、下载完之后将其上传到Linux服务器上进行解压(小编使用的SecureFX上传的)
解压命令:tar -zxvf nacos-server-2.0.0.tar.gz
3、解压之后出现一个nacos目录,我们进入到bin文件夹里
运行命令:sh startup.sh -m standalone
(standalone代表着单机模式运行,非集群模式)
4、打开浏览器输入网址:http://linux的ip地址:8848/nacos/#/login
看到如下页面则表示已经启动成功,登录账号、密码都是:nacos
或者使用命令输入:ps -ef | grep nacos
如果,命令运行完后返回了正在运行的进程,那么就说明已启动。
至此,nacos已经部署并启动成功。
ps:注意,如果访问不成功,排查一下是否开放了8848这个端口,开放端口的方法在下文中有↓
二、部署SpringBoot项目
1、打开IDEA,在右侧找到Maven栏,将SpringBoot项目打包,
2、找到我们打包的文件,将其上传到linux
ps:在pom文件一定要加上下图的代码,不然启动会失败,有些小伙伴启动失败一直找不到原因,就很暴躁的,哈哈哈哈
3、启动项目并指定日志输出位置,运行启动命令:
nohup java -jar api-1.0-SNAPSHOT.jar > /james/isee/api/logs/isee-api.log 2>&1
命令解析:
nohup 后台运行
0 标准输入(一般是键盘)
1 标准输出(一般是显示屏,是用户终端控制台)
2 标准错误(错误信息输出)
4、查看是否启动成功
ps -ef | grep api-1.0-SNAPSHOT.jar
或
netstat -nlp | grep 10086 // 10086是系统启动访问的端口(也就是springboot配置文件的server.port)
如果,命令运行完后返回了正在运行的进程,那么就说明已启动。
如果在项目中指定了微服务的注册中心地址,也可登录nacos查看服务列表,如果有对应的服务即说明启动成功。
5、访问项目
打开浏览器,输入地址,访问自己的项目:
哦豁,为什么无法访问呢?
1:检查项目的端口是否已经开放
2:若是阿里云服务器,则需要在阿里云的安全组配置进行设置
解决办法:
(1)查看对外开放的端口状态
查询已开放的端口:netstat -anp
查询指定端口是否已开:firewall-cmd --query-port=9527/tcp
提示 yes,表示开启;no表示未开启。
(2)添加指定需要开放的端口:
firewall-cmd --add-port=9527/tcp --permanent
重载入添加的端口:
firewall-cmd --reload
查询指定端口是否开启成功:
firewall-cmd --query-port=9527/tcp
(3)若是阿里云服务器,则需要在阿里云的安全组配置进行设置,这里就不一一赘述了
以下作为命令的补充:(4)、(5)无需执行
(4)移除指定端口:
firewall-cmd --permanent --remove-port=9527/tcp
(5)查看防火墙状态
查看防火墙状态:systemctl status firewalld
开启防火墙:systemctl start firewalld
关闭防火墙:systemctl stop firewalld
开启防火墙:service firewalld start
若遇到无法开启
先用:systemctl unmask firewalld.service
然后:systemctl start firewalld.service
现在重新访问地址:
输出自己定义的内容,即表示成功啦!