使用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
相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
弹性计算 监控 负载均衡
|
2月前
|
运维 Prometheus 监控
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
|
2月前
|
负载均衡 监控 应用服务中间件
配置Nginx反向代理时如何指定后端服务器的权重?
配置Nginx反向代理时如何指定后端服务器的权重?
138 61
|
27天前
|
运维 监控 负载均衡
slb后端服务器故障
slb后端服务器故障
44 13
|
2月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
42 4
|
2月前
|
JavaScript
使用node.js搭建一个express后端服务器
Express 是 Node.js 的一个库,用于搭建后端服务器。本文将指导你从零开始构建一个简易的 Express 服务器,包括项目初始化、代码编写、服务启动与项目结构优化。通过创建 handler 和 router 文件夹分离路由和处理逻辑,使项目更清晰易维护。最后,通过 Postman 测试确保服务正常运行。
78 1
|
29天前
|
安全 Java API
实现跨域请求:Spring Boot后端的解决方案
本文介绍了在Spring Boot中处理跨域请求的三种方法:使用`@CrossOrigin`注解、全局配置以及自定义过滤器。每种方法都适用于不同的场景和需求,帮助开发者灵活地解决跨域问题,确保前后端交互顺畅与安全。
|
5月前
|
SQL Java 测试技术
SpringBoot单元测试快速写法问题之PorkService 接口中的 getPork 方法的作用如何解决
SpringBoot单元测试快速写法问题之PorkService 接口中的 getPork 方法的作用如何解决
|
7月前
|
监控 druid Java
Springboot用JUnit测试接口时报错Failed to determine a suitable driver class configure a DataSource: ‘url‘
Springboot用JUnit测试接口时报错Failed to determine a suitable driver class configure a DataSource: ‘url‘
130 0
|
SQL XML JSON
Spring Boot + vue-element 开发个人博客项目实战教程(九、Postman测试接口)(下)
Spring Boot + vue-element 开发个人博客项目实战教程(九、Postman测试接口)(下)
175 0