SpringBoot部署到腾讯云的实现示例

 更新时间:2023年08月18日 15:57:55   作者:CosperNXL  
记录一下自己第一次部署springboot项目,本文主要介绍了SpringBoot部署到腾讯云的实现示例,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

此处默认已经申请到腾讯云服务器,因为本人还没有申请域名,所以就直接使用的 ip 地址

XShell连接到腾讯云

主机中填写腾讯云的公网ip地址

image-20230818124415152

公网ip地址在下图中找到

image-20230818124630811

接下来填写服务器的用户名与密码

image-20230818124703497

一般 centOS 用户名为 root ubuntu 的用户名为 ubuntu

最后点击连接即可。

将java程序打包为jar

image-20230818125142698

如上图,点击 package ,就可以打包为 jar

随后在在target中就可以找到 jar target->xxx.jar ,如下图:

image-20230818125213233

将jar传输到服务器中

image-20230818124942499

这里使用的是 xftp

配置环境

项目使用的是 jdk1.8 ,使用以下命令配置环境

yum -y install java-1.8.0-openjdk*

安装完毕后,使用以下命令查看是否安装成功

java -version

启动项目

首先到 jar 包所在目录,本人jar包在 home 目录中

随后执行以下目录执行java程序

java -jar xxx.jar

完整命令如下图

image-20230818125359550

打开网站

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

如果成功会变成绿色,如下图

image-20230818125637114

启动与关闭

启动

sh server.sh start

验证是否成功

sh server.sh status

关闭

sh server.sh stop

相关文章

  • jdbc连接数据库实例详解

    jdbc连接数据库实例详解

    在本篇内容里小编给大家分享了关于jdbc如何连接数据库的相关知识点内容,需要的朋友们学习下。
    2019-02-02
  • Java实现简单通讯录管理系统

    Java实现简单通讯录管理系统

    这篇文章主要为大家详细介绍了Java实现简单通讯录管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • Java详细讲解堆排序与时间复杂度的概念

    Java详细讲解堆排序与时间复杂度的概念

    本文主要介绍了java实现堆排序以及时间复杂度,堆排序这种排序算法是我们经常用到的,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作

    Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作

    这篇文章主要介绍了Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • Spring BeanDefinition父子关系示例解析

    Spring BeanDefinition父子关系示例解析

    这篇文章主要为大家介绍了Spring BeanDefinition父子关系示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • Java中的interrupt、interrupted和isInterrupted方法区别详解

    Java中的interrupt、interrupted和isInterrupted方法区别详解

    这篇文章主要介绍了Java中的interrupt、interrupted和isInterrupted方法区别详解,interrupt用于中断线程,调用该方法的线程的状态将会被设置为中断状态,线程中断仅仅是设置线程的中断状态位,并不会停止线程,需要用户自己去监视线程的状态并作出处理,需要的朋友可以参考下
    2023-12-12
  • Spring中IOC和AOP的核心组成架构详解

    Spring中IOC和AOP的核心组成架构详解

    这篇文章主要介绍了Spring中IOC和AOP的核心组成架构详解,本文是对Spring的2大核心功能——IoC和AOP 的总结提炼,并增加了环境profile和条件化bean的内容,篇幅较短,更像是一个大纲,或者思维导图,需要的朋友可以参考下
    2023-08-08
  • Spring @Cacheable读取配置常量方式

    Spring @Cacheable读取配置常量方式

    这篇文章主要介绍了Spring @Cacheable读取配置常量方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Java处理延时任务的常用几种解决方案

    Java处理延时任务的常用几种解决方案

    本文主要介绍了Java处理延时任务的常用几种解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • Spring Cloud集成Nacos Config动态刷新源码剖析

    Spring Cloud集成Nacos Config动态刷新源码剖析

    这篇文章主要为大家介绍了Spring Cloud集成Nacos Config动态刷新源码剖析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08

最新评论