当前位置: 首页 > news >正文

[华为云云服务器评测] Unbutnu添加SSH Key、编译启动Springboot项目

系列文章目录

第一章 [linux实战] 华为云耀云服务器L实例 Java、node环境配置
第二章 [linux实战] Unbutnu添加SSH Key、启动Springboot项目


文章目录

  • 系列文章目录
  • 前言
  • 一、任务拆解
  • 二、配置git,添加SSH Key
    • 2.1、登录远程主机
    • 2.2、配置git用户名和邮箱
    • 2.3、生成SSH key
    • 2.4、查看生成的SSH key
    • 2.5、在github里添加SSH key
  • 3、通过git命令拉取github上的Springboot项目
    • 3.1、准备好Springboot项目,上传到github
    • 3.2、拉取代码
  • 4、通过Maven编译项目
    • 4.1、配置maven的阿里镜像
      • 4.1.1、查看maven配置,找到maven在主机里的路径
      • 4.1.2、进入上一步的Maven home路径,找到settings.xml文件
    • 4.2、修改settings.xml文件
  • 5、运行项目
    • 5.1、打包Springboot项目
    • 5.2、运行项目
      • 5.2.1、通过浏览器查看项目
  • 6、小结


前言

上一章节我们在云耀云服务器Unbutnu系统里配置了JDK、Git、Node环境,这一章节我们需要添加SSH Key,拉取github上的Springboot项目,通过Maven编译,最后运行起来。


一、任务拆解

1、添加SSH Key;
2、通过git命令拉取github上的Springboot项目;
3、通过Maven编译项目;
4、运行项目

二、配置git,添加SSH Key

2.1、登录远程主机

打开终端,输入命令进行配置:

ssh root@远程主机外网IP
输入密码

2.2、配置git用户名和邮箱

在终端里输入命令进行配置:

git config --global user.name ‘用户名’
git config --global user.email ‘email@xx.com’

2.3、生成SSH key

在终端里输入命令生成SSH key:

ssh-keygen -t rsa -C ’email@xx.com‘
在这里插入图片描述

2.4、查看生成的SSH key

在终端里输入命令查看SSH key:

cat /root/.ssh/icsdnQc_rsa.pub
在这里插入图片描述

2.5、在github里添加SSH key

把【2.4】生成的xx.pub文件里的信息,粘贴到github里的SSH Key里
在这里插入图片描述

3、通过git命令拉取github上的Springboot项目

3.1、准备好Springboot项目,上传到github

演示地址(私人项目):https://github.com/hd5723/csdnQc.git

3.2、拉取代码

见【2.5】需要提前配置好SSH key

cd /home //进入home目录
mkdir java //创建java目录
cd java //进入java目录
mkdir code //创建code目录
cd code //进入code目录
git clone https://github.com/hd5723/csdnQc.git //从github仓库拉取代码
在这里插入图片描述
截图是已经创建好的/home/java/code目录,已经拉取下来的csdnQc代码,打开csdnQc,可以看到Java项目结构:pom.xml、src

4、通过Maven编译项目

4.1、配置maven的阿里镜像

4.1.1、查看maven配置,找到maven在主机里的路径

在终端输入命令:

mvn -v
在这里插入图片描述

4.1.2、进入上一步的Maven home路径,找到settings.xml文件

在终端输入命令:

cd /usr/share/maven
ls
cd conf
ls
在这里插入图片描述

4.2、修改settings.xml文件

通过VI命令编辑settings.xml文件,在mirrors标签内部,加入代码:

	<mirror><id>alimaven</id><mirrorOf>central</mirrorOf><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/repositories/central/</url></mirror>

在这里插入图片描述

5、运行项目

5.1、打包Springboot项目

在终端输入命令:

cd /home/java/code/csdnQc/ //进入项目目录
mvn clean package //使用mvn命令编译打包项目
在这里插入图片描述
在这里插入图片描述

ls
cd target //进入target目录(编译后的文件)
ls //查看target目录下的文件,如果编译成功可以看到 xxxx-x.x.x-SNAPSHOT.jar文件
在这里插入图片描述

5.2、运行项目

在终端输入命令:

nohup java -jar spiderX-0.0.1-SNAPSHOT.jar >log.file 2>&1 &
在这里插入图片描述

5.2.1、通过浏览器查看项目

地址:http://139.159.230.49/csdn/static/index.html
1、项目做了简单的CSDN博客质量分查询(本地缓存,未做清理);
2、未做权限验证;
3、第一个输入框是CSDN账号ID
找到自己随便一篇博客:https://blog.csdn.net/s445320/article/details/132556690
案例:s445320 就是我自己的账号ID
4、第一个输入框是第页码(默认每页100条数据,没有做多线程优化,所以接口很慢)
在这里插入图片描述

6、小结

以上就是这一章的内容,我们把自己的Springboot代码通过git命令从github上拉取到ubuntu云主机,然后通过mvn命令打包项目,最后运行项目,通过浏览器即可访问项目(如果访问不 ,请看上一章节的网络安全组配置,需要配置入规则,开放80端口)

相关文章:

[华为云云服务器评测] Unbutnu添加SSH Key、编译启动Springboot项目

系列文章目录 第一章 [linux实战] 华为云耀云服务器L实例 Java、node环境配置 第二章 [linux实战] Unbutnu添加SSH Key、启动Springboot项目 文章目录 系列文章目录前言一、任务拆解二、配置git,添加SSH Key2.1、登录远程主机2.2、配置git用户名和邮箱2.3、生成SSH key2.4、查…...

【MySQL学习笔记】(七)内置函数

内置函数 日期函数示例案例-1案例-2 字符串函数示例 数学函数其他函数 日期函数 示例 获得当前年月日 mysql> select current_date(); ---------------- | current_date() | ---------------- | 2023-09-03 | ---------------- 1 row in set (0.00 sec)获得当前时分秒…...

《Python魔法大冒险》004第一个魔法程序

在图书馆的一个安静的角落,魔法师和小鱼坐在一张巨大的桌子前。桌子上摆放着那台神秘的笔记本电脑。 魔法师: 小鱼,你已经学会了如何安装魔法解释器和代码编辑器。是时候开始编写你的第一个Python魔法程序了! 小鱼:(兴奋地两眼放光)我准备好了! 魔法师: 不用担心,…...

架构,平台,框架的区别和联系

1、解释说明 - 架构&#xff1a;在软件开发中&#xff0c;架构是指软件的整体设计和组织方式。它包括了软件的结构、组件和交互方式等方面的设计。架构定义了系统的高级结构和组织方式&#xff0c;以及各个组件之间的关系和交互方式。一个良好的架构可以提高软件的可维护性、可…...

Mac 安装php多版本,brew安装php8.0

因为需要我要在mac上装两个php版本&#xff0c;先前我已经装过php7.4,下面我们逐步安装php8.0 开始安装8.0&#xff1a; 直接运行安装 brew install php8.0 遇到问题怀疑是仓库太老了&#xff0c;更新一下homebrew ,重新安装 brew update 安装成功了,不过看了下版本好像不能正…...

【100天精通Python】Day53:Python 数据分析_NumPy数据操作和分析进阶

目录 1. 广播 2 文件输入和输出 3 随机数生成 4 线性代数操作 5 进阶操作 6 数据分析示例 1. 广播 广播是NumPy中的一种机制&#xff0c;用于在不同形状的数组之间执行元素级操作&#xff0c;使它们具有兼容的形状。广播允许你在不显式复制数据的情况下&#xff0c;对不同…...

druid连接不上doris有哪些可能原因

如果你在使用Druid连接池连接Doris时遇到问题&#xff0c;无法连接上数据库&#xff0c;可能有以下几个原因和解决方案&#xff1a; 网络配置问题&#xff1a;确保你的应用程序能够与Doris数据库所在的服务器进行通信。检查防火墙设置、网络配置以及Doris数据库的监听端口是否…...

双边滤波 Bilateral Filtering

本文是对图像去噪领域经典的双边滤波法的一个简要介绍与总结&#xff0c;论文链接如下&#xff1a; https://users.soe.ucsc.edu/~manduchi/Papers/ICCV98.pdf 1.前言引入 对一副原始灰度图像&#xff0c;我们将它建模为一张二维矩阵u&#xff0c;每个元素称为一个像素pixel&am…...

PXE批量装机

目录 前言 一、交互式 &#xff08;一&#xff09;、搭建环境 &#xff08;二&#xff09;、配置dhcp服务 &#xff08;三&#xff09;、FTP服务 &#xff08;四&#xff09;、配置TFTP服务 &#xff08;五&#xff09;、准备pxelinx.0文件、引导文件、内核文件 &#…...

Linux--VMware的安装和Centos

一、VMware和Linux的关系 二、VMware的安装 VM_ware桌面虚拟机 最新中文版 软件下载 (weizhen66.cn) VMware-Workstation-Lite-16.2.2-19200509-精简安装注册版.7z - 蓝奏云 如果安装不成功&#xff0c;则设置BIOS 三、在VMware中加入Centos 下载地址&#xff1a; CentOS-…...

dji uav建图导航系列()ROS中创建dji_sdk节点包(一)项目结构

文章目录 1、整体项目结构1.1、 目录launch1.2、文件CMakeLists.txt1.3、文件package.xml1.4、目录include1.4、目录srv在ROS框架下创建一个无人机的节点dji_sdk,实现必需的订阅(控制指令)、发布(无人机里程计)、服务(无人机起飞降落、控制权得很)功能,就能实现一个类似…...

基于x86_64 ubuntu22.04的framebuffer编程

文章目录 前言一、framebuffer简介二、framebuffer接口1.framebuffer设备描述信息2.framebuffer访问接口3.查询/设置可更改信息 三、使用步骤 前言 前段时间由于笔记本没有保管好&#xff0c;LCD显示屏压碎了。于是&#xff0c;将笔记本电脑拆开查看LCD型号。在淘宝上下单买了…...

解密回文--栈

“ xyzyx ”是一个回文字符串&#xff0c;所谓回文字符 串就是指正读反读均相同的字符序列&#xff0c;如“席主席”、“记书记”、“ aha ”和“ ahaha ”均是回 文&#xff0c;但“ ahah ”不是回文。通过栈这个数据结构我们将很容易判断一个字符串是否为回文。 首先我们需…...

Mysql主从服务安装配置

1.下载地址 MySQL :: Download MySQL Community Server (Archived Versions)https://downloads.mysql.com/archives/community/ 2.安装配置 1.下载解压后&#xff0c;拷贝一份作为slave的安装目录 3.配置my.ini 由于下载mysql8版本&#xff0c;解压后&#xff0c;没有相关的my…...

双向BFS

1034 Number Game 分数 35 作者 陈越 单位 浙江大学 A number game is to start from a given number A, and to reach the destination number B by a sequence of operations. For the current number X, there are 3 types of operations: XX1 XX−1 XXN Your job is to f…...

数据艺术:精通数据可视化的关键步骤

数据可视化是将复杂数据转化为易于理解的图表和图形的过程&#xff0c;帮助我们发现趋势、关联和模式。同时数据可视化也是数字孪生的基础&#xff0c;本文小编带大家用最简单的话语为大家讲解怎么制作一个数据可视化大屏&#xff0c;接下来跟随小编的思路走起来~ 1.数据收集和…...

MySQL 是如何实现事务的四大特性的?

分析&回答 如果你不知道事务更不知道四大特性请先看看&#xff1a;说说什么是事务 原子性 语句要么都执行&#xff0c;要么都不执行&#xff0c;是事务最核心的特性&#xff0c;事务本身来说就是以原子性来定义的&#xff0c;实现主要是基于undo log undo log&#xff…...

python实现zscore归一化和minmax标准化

zscore归一化&#xff1a; minmax from sklearn import preprocessing from sklearn.preprocessing import StandardScaler import numpy as np# 数据 x np.array([[1.,-1.,2.],[2.,0.,0.],[0.,1.,-1.]]) print(----------------minmaxscaler标准化-------------) # 调用minma…...

架构师成长之路Redis第三篇|Redis key过期清除策略

Eviction policies maxmemory 100mb 当我们设置的内存达到指定的内存量时,清除策略的配置方式决定了默认行为。Redis可以为可能导致使用更多内存的命令返回错误,也可以在每次添加新数据时清除一些旧数据以返回到指定的限制。 当达到最大内存限制时,Redis所遵循的确切行为是…...

C++智能指针之weak_ptr(保姆级教学)

目录 C智能指针之weak_ptr 概述 作用 本文涉及的所有程序 使用说明 weak_ptr的常规操作 lock(); use_count(); expired(); reset(); shared_ptr & weak_ptr 尺寸 智能指针结构框架 常见使用问题 shared_ptr多次引用同一数据&#xff0c;会导致两次释放同一内…...

OpenLayers 可视化之热力图

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 热力图&#xff08;Heatmap&#xff09;又叫热点图&#xff0c;是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

基于Flask实现的医疗保险欺诈识别监测模型

基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施&#xff0c;由雇主和个人按一定比例缴纳保险费&#xff0c;建立社会医疗保险基金&#xff0c;支付雇员医疗费用的一种医疗保险制度&#xff0c; 它是促进社会文明和进步的…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

Go 语言并发编程基础:无缓冲与有缓冲通道

在上一章节中&#xff0c;我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道&#xff0c;它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好&#xff0…...

使用LangGraph和LangSmith构建多智能体人工智能系统

现在&#xff0c;通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战&#xff0c;比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...