个人技术总结——SpringBoot项目部署到华为云

Extazy 2024-06-02 20:57:07
这个作业属于哪个课程福州大学-202302软件工程实践
这个作业要求在哪里软件工程实践总结&个人技术博客
这个作业的目标个人技术总结
其他参考文献CSDN、《构建之法》

目录

  • 一、技术概述
  • 二、技术详述
  • 2.1 前期准备
  • 2.2 具体步骤
  • 三、问题和解决过程
  • 3.1 服务器连接问题
  • 3.2 Java环境安装问题
  • 3.3 应用无法启动
  • 四、总结
  • 五、参考文献

一、技术概述

将SpringBoot项目部署到服务器上,以实现应用的在线运行和管理。通常在生产环境中使用。学习该技术可以提升部署和运维能力,难点在于服务器配置、网络安全设置和性能监控。

二、技术详述

2.1 前期准备

  1. 注册华为云账户:首先需要在华为云官网注册一个账户,并完成实名认证。

  2. 创建项目:登录到华为云管理控制台,选择“项目管理”创建一个新的项目。

  3. 选择云服务:在项目下选择需要的云服务,例如弹性云服务器(ECS),关系型数据库服务(RDS),对象存储服务(OBS)等。

    在这里插入图片描述

    2.2 具体步骤

  4. 创建弹性云服务器(ECS)

    • 选择合适的实例规格和操作系统(建议选择CentOS或Ubuntu)。

      在这里插入图片描述

    • 配置网络和安全组,确保允许HTTP和SSH访问。

      在这里插入图片描述

  5. 连接服务器

    • 使用SSH工具(如PuTTY或终端)连接到ECS实例。

      在这里插入图片描述

    • 更新服务器软件包:sudo apt-get updatesudo yum update

  6. 安装Java环境

    sudo apt-get install openjdk-11-jdk # Ubuntu
    sudo yum install java-11-openjdk # CentOS
    
  7. 部署Spring Boot应用)

    • 在本地打包SptingBoot应用

      在这里插入图片描述

      在这里插入图片描述

  • 将Spring Boot应用的JAR文件上传到服务器(使用scp命令或SFTP工具)。

    在这里插入图片描述

  • 在服务器上运行Spring Boot应用:java -jar your-app.jar。
  1. 配置反向代理(可选)

    • 安装并配置Nginx或Apache,将外部请求转发到Spring Boot应用。

      在这里插入图片描述

      location /api {
      proxy_pass http://127.0.0.1:8121;
      proxy_set_header Host $proxy_host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_buffering off;
      proxy_set_header Connection "";
      }
      
  2. 监控和维护

    • 使用华为云提供的监控工具监控服务器性能和应用运行状态。
    • 设置自动备份和故障恢复策略。

三、问题和解决过程

3.1 服务器连接问题

  • 问题描述:无法通过SSH连接到华为云的弹性云服务器(ECS)。
  • 解决方案:
    • 检查安全组配置,确保已开放22端口的入站规则。
    • 确认使用的IP地址、用户名和密钥文件正确无误。
    • 使用ping命令检查网络连接是否正常。

3.2 Java环境安装问题

  • 问题描述:在安装Java环境时出现软件包找不到或下载失败。
  • 解决方案:
    • 确保网络连接正常,必要时更换软件源。
    • 更新软件包列表:
      sudo apt-get update # Ubuntu
      sudo yum update # CentOS
      

3.3 应用无法启动

  • 问题描述:运行Spring Boot应用时出现启动失败或异常错误。
  • 解决方案:
    • 检查日志文件,定位错误信息。
    • 确认所有依赖库和配置文件正确无误。
    • 使用以下命令查看运行日志:
      java -jar your-app.jar > app.log 2>&1 &
      tail -f app.log
      

四、总结

在服务器上部署项目在有官方文档以及网上教程的指导下并不是很困难,不同的平台部署流程大同小异,但需要注意和教程中部署环境的差异。不能完全照抄教程上的配置,应该根据自身情况进行自定义设置。在部署到服务器上时,还需要注意本地开发环境和服务器生产环境的区别,最好准备两套不同的配置文件,方便调试。这样可以避免在出现问题时虽然知道问题的存在却无法准确定位问题的情况。
通过理解和灵活应用部署步骤,结合实际情况,能够更有效地解决部署过程中遇到的问题,实现稳定高效的项目运行。

五、参考文献

...全文
482 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

122

社区成员

发帖
与我相关
我的任务
社区描述
FZU-SE
软件工程 高校
社区管理员
  • LinQF39
  • 助教-吴可仪
  • 一杯时间
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧