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编码,表示的是该进程的父进程)

使用另外一种方法启动服务器

  1. 进入到jar包所在位置

  2. 建立启动停止文件

    复制代码
    touch server.sh
  3. 打开文件

    复制代码
    vim springboot.sh
  4. 按i进入编辑模式,粘贴下列代码

    bash 复制代码
    #!/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

  5. 将server.sh设置为可执行文件

    复制代码
    chmod 770  server.sh

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

  6. 启动与关闭

    启动

    复制代码
    sh server.sh start

    验证是否成功

    复制代码
    sh server.sh status

    关闭

    复制代码
    sh server.sh stop
相关推荐
实名上网宋凯宣7 小时前
Django
后端·python·django
利威尔xu9 小时前
Go IM 源码实战(14):本地缓存快 3000 倍,失效却难 10 倍
后端·缓存·微服务·面试·golang
逃逸线LOF10 小时前
Ribbon负载均衡原理(Irule组件、源码分析)
后端·spring cloud·ribbon
慢云智慧空间10 小时前
从设备智能到空间理解,空间智能终端解决方案商如何重新定义行业标准
后端
利威尔xu10 小时前
Go IM 源码实战(13):30 个会话只有 2 个红点,未读数错在三条路径
redis·后端·微服务·面试·golang
薛定谔的猫-菜鸟程序员11 小时前
软件架构设计师开发资料大全(从入门到精通)
后端·python·系统架构·flask·架构设计师
云创智城-yuncitys12 小时前
YunParking 4.0:JDK 17 与 Spring Boot 3.2 的停车云升级
java·开发语言·spring boot
IT_陈寒12 小时前
SpringBoot多环境配置把我坑惨了,这个踩坑经验你最好看看
前端·人工智能·后端
码事漫谈13 小时前
DeepSeek 搞了个 "Super-agent",但不是超级智能
后端
吴凡wudianmei13 小时前
从 0 搭一个 AI Agent(四):SSE 跑通之后,三处“契约错配”与它们的修复边界
前端·后端·aigc