SpringBoot部署到腾讯云的实现示例
作者:CosperNXL
记录一下自己第一次部署springboot项目,本文主要介绍了SpringBoot部署到腾讯云的实现示例,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
此处默认已经申请到腾讯云服务器,因为本人还没有申请域名,所以就直接使用的 ip
地址
XShell连接到腾讯云
主机中填写腾讯云的公网ip地址
公网ip地址在下图中找到
接下来填写服务器的用户名与密码
一般 centOS
用户名为 root
, ubuntu
的用户名为 ubuntu
最后点击连接即可。
将java程序打包为jar
如上图,点击 package
,就可以打包为 jar
随后在在target中就可以找到 jar
, target->xxx.jar
,如下图:
将jar传输到服务器中
这里使用的是 xftp
配置环境
项目使用的是 jdk1.8
,使用以下命令配置环境
yum -y install java-1.8.0-openjdk*
安装完毕后,使用以下命令查看是否安装成功
java -version
启动项目
首先到 jar
包所在目录,本人jar包在 home
目录中
随后执行以下目录执行java程序
java -jar xxx.jar
完整命令如下图
打开网站
http://腾讯云服务器的公网ip:端口号
就可以使用了
但是这样启动的话,当终端关闭,网站也打不开,那么就可以使用以下命令
nohup java -jar xx.jar > logName.log 2>&1 &
nohup
:不挂断地运行命令,退出帐户之后继续运行相应的进程。关闭则使用:
1.
ps -ef | grep
(能识别你的进程名称的关键词):会返回nohup启动的所有相关进程2.
kill -9 pid
(pid为每一行的第二个id编码,表示的是该进程的父进程)
使用另外一种方法启动服务器
进入到 jar
包所在位置
建立启动停止文件
touch server.sh
打开文件
vim springboot.sh
按 i
进入编辑模式,粘贴下列代码
#!/bin/bash #这里可替换为你自己的执行程序,其他代码无需更改 APP_NAME=zfile-4.1.5.jar #使用说明,用来提示输入参数 usage() { echo "Usage: sh 执行脚本.sh [start|stop|restart|status]" exit 1 } #检查程序是否在运行 is_exist(){ pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' ` #如果不存在返回1,存在返回0 if [ -z "${pid}" ]; then return 1 else return 0 fi } #启动方法 start(){ is_exist if [ $? -eq "0" ]; then echo "${APP_NAME} is already running. pid=${pid} ." else nohup java -jar $APP_NAME >> catalina.out 2>&1 & echo "start OK,${APP_NAME} is running" fi } #停止方法 stop(){ is_exist if [ $? -eq "0" ]; then kill -9 $pid echo "stop OK,${APP_NAME} is NOT running." else echo "${APP_NAME} is not running" fi } #输出运行状态 status(){ is_exist if [ $? -eq "0" ]; then echo "${APP_NAME} is running. Pid is ${pid}" else echo "${APP_NAME} is NOT running." fi } #重启 restart(){ stop start } #根据输入参数,选择执行对应方法,不输入则执行使用说明 case "$1" in "start") start ;; "stop") stop ;; "status") status ;; "restart") restart ;; *) usage ;; esac
注意 APP_NAME
改为自己的 jar
包名称
随后,先按 esc
在输入 :wq
将server.sh设置为可执行文件
chmod 770 server.sh
如果成功会变成绿色,如下图
启动与关闭
启动
sh server.sh start
验证是否成功
sh server.sh status
关闭
sh server.sh stop