使用aliyunECS服务器+宝塔面板部署springboot后端项目并测试接口

简介: 在部署过程中遇到了很多问题,解决起来也是十分繁琐,这里写个笔记记录一下遇到的问题和思路这里我先打算测试以下后端接口,前端代码还没有进行运行。还没有购买域名,因为域名需要备案时间要一周所以暂时使用公网ip进行访问。

整体流程

  1. aliyun获取一台自己的服务器
  2. 连接服务器并安装宝塔面板
  3. 宝塔面板安装基本环境
  4. 服务器中数据库准备,修改项目数据库连接配置
  5. 打包项目放到服务器上运行

阿里云领取学生免费试服务器

领取学生试用服务器

在阿里云界面搜索学生就可以看到学生服务器的领取方式了

需要学生认证,25岁一下就可以领取,初次领用需要完成两个任务,很简单一会儿就好

需要注意的是在服务器选配的时候,操作系统选择linux CentOS7.6能更好的兼容宝塔面板

获取服务器后需要的操作

  1. 网页左上角菜单进入云服务器ECS
  2. 点击自己刚领取到的实例进入详情页面进行密码重置并记录密码
  3. 下载Xshell进行数据库的连接就可以对远程服务器进行命令操作了

Xhell连接远程服务器

连接服务器需要服务器的公网ip(在实例详情页面可以看到)和实例密码,第一次连接是使用实例密码,后续如果创建了密钥对那就需用密钥对来连接

安装宝塔面板并在服务器上安装环境

在宝塔官网找到安装命令后复制到Xhell终端中回车运行即可

  • 需要注意的是如果在Xhell终端退格键无法正常使用,只需要在 文件>默认会话属性>终端键盘 里面配置DELETE键序列和BACKSPACE序列为ASCII 127即可

安装好宝塔面板后会给出宝塔面板的访问地址和用户名密码,记录一下

通过地址访问宝塔面板,访问不到的话去 阿里云控制台>ECS服务器>安全组>配置规则 里面把13512端口打开

  • 默认宝塔面板是运行在服务器的13512端口

成功登录账号密码后就可以安装环境了,面板会自动推荐基本的环境自动安装,选择安装即可

如果有后续需要的话在软件商店进行安装即可

准备一个能正常运行的后端项目

首先明确的是运行jar包的项目需要有java环境,如果后端项目有数据库需求的话那么服务器上也是需要安装java和数据库的

这里我windows中准备的项目是springboot项目,数据库是Mysql8.0、jdk1.8

linux中安装了 jdk1.8(必须对应)、Mysql5.5(因为服务器内存较低,建议安装5版本的数据库,再想到版本向下兼容,因此没有更改,后续也没什么问题)


准备数据库和打包jar包并运行

打包项目到服务器中运行:

  1. 先在宝塔面板中新建数据库记录数据库用户名和密码用于数据库连接配置
  2. 将windows中数据库导出项目和结构sql文件,在宝塔面板将sql文件导入到新建的数据库中
  3. 修改springboot项目中的数据库连接配置,(数据库名、用户名、密码)
  4. 配置运行端口,注意的是配置的端口需要在 阿里云控制台>ECS服务器>安全组>配置规则 添加那个端口
  5. 使用Maven进行打包并获得jar包
  6. 在Xhell终端新建一个文件夹,cd到该目录下,并将jar包直接拖入Xhell终端即可完成文件上传到服务器

    • 这一步需要linux安装了lrzsz才行如果没有安装执行以下命令进行安装

      yum -y install lrzsz
  7. jar包上传后执行命令运行jar包

    # 运行jar包
    # nohup意思为运行不会被命令ctrl+C 和关闭终端终止
    # >> xxx.log 为输出的日志文件名称
    # & 表示后台运行
    nohup java -jar XXX.jar > XXX.log &

    通过日志可以看到项目运行情况

    # tail 为linux查看命令 -f 表示循环读取,方便查看日志
    tail -y XXX.log
  8. 访问公网ip加端口即可测试后端项目是否运行

如何结束运行jar包以及查看端口是否被占用

#查看8081端口进程
lsof -i:8081

#杀死进程
kill -9 pid
相关实践学习
使用操作系统智能助手OS Copilot解锁操作系统运维与编程
在本实验场景中,将在阿里云ECS上体验OS Copilot产品。OS Copilot是阿里云操作系统团队基于大模型构建的OS智能助手。它具有自然语言问答、辅助命令执行、系统运维调优等功能,帮助用户更好地使用Linux,提升阿里云的使用体验。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7月前
|
人工智能 测试技术 项目管理
测试不再碎片化:AI智能体平台「项目资料套件」功能上线!
在实际项目中,需求文档分散、整理费时、测试遗漏等问题常困扰测试工作。霍格沃兹推出AI智能体测试平台全新功能——项目资料套件,可将多个关联文档打包管理,并一键生成测试用例,提升测试完整性与效率。支持套件创建、文档关联、编辑删除及用例生成,适用于复杂项目、版本迭代等场景,助力实现智能化测试协作,让测试更高效、更专业。
|
9月前
|
监控 Java 应用服务中间件
低并发编程|如何用720个请求让后端服务器瘫痪
本次故障因应用启动时未有效校验核心依赖模块初始化异常,导致后续请求处理中抛出无法捕获的错误,引发线程阻塞,最终耗尽HSF线程池,服务不可用。排查发现类初始化失败且异常未被正确处理,结合线程无限等待问题,确认为依赖初始化异常与流处理中断所致。修复措施包括加强启动校验、捕获Throwable及设置合理超时。总结指出,系统稳定性需从细节入手,防微杜渐,避免连锁故障。
低并发编程|如何用720个请求让后端服务器瘫痪
|
7月前
|
测试技术 UED 开发者
性能测试报告-用于项目的性能验证、性能调优、发现性能缺陷等应用场景
性能测试报告用于评估系统性能、稳定性和安全性,涵盖测试环境、方法、指标分析及缺陷优化建议,是保障软件质量与用户体验的关键文档。
|
9月前
|
Java 测试技术 Spring
简单学Spring Boot | 博客项目的测试
本内容介绍了基于Spring Boot的博客项目测试实践,重点在于通过测试驱动开发(TDD)优化服务层代码,提升代码质量和功能可靠性。案例详细展示了如何为PostService类编写测试用例、运行测试并根据反馈优化功能代码,包括两次优化过程。通过TDD流程,确保每项功能经过严格验证,增强代码可维护性与系统稳定性。
346 0
|
11月前
|
开发框架 Java 关系型数据库
在Linux系统中安装JDK、Tomcat、MySQL以及部署J2EE后端接口
校验时,浏览器输入:http://[your_server_IP]:8080/myapp。如果你看到你的应用的欢迎页面,恭喜你,一切都已就绪。
680 17
|
9月前
|
人工智能 数据可视化 测试技术
UAT测试排程工具深度解析:让验收测试不再失控,项目稳稳上线
在系统交付节奏加快的背景下,“测试节奏混乱”已成为项目延期的主因之一。UAT测试排程工具应运而生,帮助团队结构化拆解任务、清晰分配责任、实时掌控进度,打通需求、测试、开发三方协作闭环,提升测试效率与质量。本文还盘点了2025年热门UAT工具,助力团队选型落地,告别靠表格和群聊推进测试的低效方式,实现有节奏、有章法的测试管理。
|
NoSQL Java 数据库连接
Idea创建SpringBoot多模块项目
我们可以定义一个维度,以此来划分模块,例如上述商城、可以划分成商品、库存和订单模块。也可以目录结构分层,`Controller`层,只不过没人这样做。这样就引申出了下一个问题`拆分策略`。
1674 0
Idea创建SpringBoot多模块项目
|
Java 应用服务中间件 Maven
传统maven项目和现在spring boot项目的区别
Spring Boot:传统 Web 项目与采用 Spring Boot 项目区别
822 0
传统maven项目和现在spring boot项目的区别
|
XML Java 数据库连接
创建springboot项目的基本流程——以宠物类别为例
创建springboot项目的基本流程——以宠物类别为例
297 0
创建springboot项目的基本流程——以宠物类别为例
|
存储 机器学习/深度学习 IDE
SpringBoot 项目与被开发快速迁移|学习笔记
快速学习 SpringBoot 项目与被开发快速迁移
SpringBoot 项目与被开发快速迁移|学习笔记
下一篇
开通oss服务