spring boot centos?springboot原理
大家好,spring boot centos相信很多的网友都不是很明白,包括springboot原理也是一样,不过没有关系,接下来就来为大家分享关于spring boot centos和springboot原理的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
Centos7安装Nacos
在CentOS 7上安装Nacos,首先需要完成几个关键步骤。以下详细介绍如何在您的系统上完成Nacos的安装。
第一步:安装JDK
为了运行Nacos,您需要安装Java Development Kit(JDK)。在CentOS 7中,可以通过EPEL(Extra Packages for Enterprise Linux)仓库安装Java。打开终端并执行以下命令:
sudo yum install epel-release
sudo yum install java-1.8.0-openjdk
这将安装最新版本的OpenJDK 1.8。
第二步:安装Maven
Maven是一个用于自动化软件项目构建、依赖管理和文档生成的工具。对Nacos的安装至关重要。在CentOS 7中,可以通过EPEL仓库安装Maven。执行以下命令来安装Maven:
sudo yum install epel-release
sudo yum install maven
安装完成后,您可以通过运行“mvn-v”来验证Maven是否成功安装。
第三步:安装Nacos
接下来,下载Nacos的最新版本的jar包。可以从Nacos官方GitHub仓库或官方网站下载。解压缩下载的文件到您的服务器目录中。例如,解压缩文件到“/opt/nacos”目录下。
安装完成后,需要配置Nacos的配置文件(通常位于“/opt/nacos/conf”目录下)。在配置文件中,您可以设置Nacos的服务器端口、数据库连接信息等。
配置完成后,您可以使用Maven构建Nacos。在Nacos的根目录中,运行以下命令来启动Nacos服务:
mvn spring-boot:run
至此,您已成功在CentOS 7上安装了Nacos。您现在可以访问Nacos控制台,进行管理和配置。
SpringBoot + ES基本项目搭建实例
之前一直没有写ES相关的博文,现在开始补课,预计5-6篇博文将es的使用姿势展示给各位小伙伴;本文将作为es结合springboot的第一篇博文,基本项目环境搭建
本项目借助 SpringBoot 2.2.1.RELEASE+ maven 3.5.3+ IDEA进行开发
开一个web服务用于测试
配置文件application.yml,注意下面的配置信息,下面采用的是由我们自己来解析配置的方式
说明
上面配置介绍的是一种偏基础的es文档操作姿势,相比较于封装得更好的 spring-boot-starter-data-elasticsearch,使用更加灵活
接下来我们基于 RestHighLevelClient来操作es,首先第一步就是需要初始化这实例
注意上面的实现,用户名+密码并没有使用,当es设置了用户名、密码之后,是通过每次请求时,在请求头基于Basic Auth方式进行身份验证的;后面会介绍到
我们在本机搭建了一个es用于模拟测试,在上面的配置完之后,就可以直接与es进行交互了
下面是一个简单的使用姿势
注意上面的实现,有下面几个重要知识点
身份验证
采用Basic Auth方式进行身份校验,简单来说就是在请求头中添加一个
• key= Authorization
• value="Basic"+ base64(user+":"+ pwd)
访问姿势
上面是一个根据 id查询文档的实例,简单可以理解为三步
•创建: XxRequest
•添加请求头: RequestOptions.Builder.addHeader
•执行: client.get(xxRequest, RequestOptions)
•工程:
•源码:
尽信书则不如,以上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激
下面一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛
•一灰灰Blog个人博客
•一灰灰Blog-Spring专题博客
[1] 200605-Centos安装ElasticSearch-一灰灰Blog:
[2] 210329-Elastic& Kibana安装与基本使用-一灰灰Blog:
执行springboot的jar
springboot生成的jar包怎么使用
Spring-bootjar包方式启动:
首先,为了防止和常扒配渗用的Tomcat8080端口冲突,将Spring-boot项目的端口卖尺号设置为9090。
具体方法:在application.properties文件里写server.port=9090。
使用maven命令:cleanpackage打包。
放到服务器上一个合春脊适的位置。
使用java-jarspring-boot01-1.0-SNAPSHOT.jar命令,启动jar包。
然后,在浏览器输入就可以看到有json格式的数据返回。
然而,上面的这种方式,只要控制台关闭,服务就不能访问了。下面我们使得jar包在后台运行。
Linux下运行springboot项目jar包,启动日志输出教程
启动之后,会在jar所在目录生成一个nuhup.log日志文件,记录控制台的日志输出。
备注:主要看符号两边:""对应输出什么和输出到哪里;
输出分为标准输出和错误输出,标准输出就是全输出,输出控制台信息;错误输出只是输出错误日志信息;
因此上面我们执行的***.jarnohup.log21命令,可以拆解成nohup.log和21两个输出,只看符号“”左边输出部分,分别代表默认标准输出到一个地方,然后错误日志输出到另一个地方,咱们后面再讲输出到什么地方。
输出到哪,分为输出到指定路径日志文件和重定向位置。
1.指定路径:如下:枝蠢肆/data/work/log.log这样便是指定输出到路径/data/work/log.log文件。
Linux上有一个特例路径/dev/null,这路径就好像永久删除的回收站,当我们不需要输出任何信息时,就可以将输出指向/dev/null,那就不会有任何输出文件。
2.至于重定向,就是将文件重定向到一个地猛轿址,如下:
1重定向到标准输出的地址,啥意思,就是输出到已指定的标准输出的地址。
2重定向到错误输出的地址,就是输出到已指定的错误输出的地址。
比如nohup.log21,意思是前面默认标准输出到了nohup.log日志下,后面错误输出也指向标准输出的地址,也即nohup.log日志下。
命令后面加的档雀,可让命令在后台执行,否则关闭会话会停止程序。
(1)nohupjava-jar***.jar/data/log.log2/data/err.log
解释:标准日志输出到/data/log.log文件,错误日志输出到/data/err.log文件。
(2)nohupjava-jar***.jar/data/log.log21
解释:标准日志输出到/data/log.log文件,错误日志重定向也输出到/data/log.log文件。
(3)nohupjava-jar***.jar/dev/null2/data/err.log
解释:标准日志输出到/dev/null,也就是不输出标准日志,错误日志输出到/data/err.log文件。
一般采用上面(3)只输出错误日志就可以了,有需要的按照(1)进行输出。
springboot项目导出可执行的jar包
只需要灶激在项目的pom.xml文件配置spring-boot-maven-plugin插件就可以了,备段如下:
注:plugins标签外层千万不要加pluginManagement,这个标签只是定义插件,并不真正启用插件。
打包插件spring-boot-maven-plugin和maven-jar-plugin的区别:
spring-boot-maven-plugin:将应用程序及其依赖jar一起打包到一个独立的jar中,打出来的是fatjar,可以直接通过java-jar?命令启动仿辩誉。
maven-jar-plugin:只包括当前模块的jar,不包含依赖jar,无法直接启动。
LinuxCentos7环境下Docker搭建并运行SpringBoot的jar包
1、使用maven工具生成jar包;
先点击clean,再点击packages
2、使用文件传输工具将jar包上传到服务器的拆昌岁目录下(如:/usr/local/pr)
本地的jar包路径在项目路径下的target目录下,如renren-fast.jar
同时新建一个Dockerfile文件,文件内容如下:
EXPOSE对应项目的端口号
3、创建docker镜像
dockerbuild-trenren.
dockerimages--查看镜像
4、启动镜像
dockerrun-d-p8888:8888renren
(一)报错:
WARNING:IPv4forwardingisdisabled.Networkingwillnotwork.
解旅睁决方式:
vi/etc/sysctl.conf
其中添加一行:
net.ipv4.ip_forward=1
保存退出后,重启网络
systemctlrestartnetwork
(二)报错
docker:Errorresponsefromdaemon:driverfailedprogrammingexternalconnectivityonendpointmystifying_tesla
解决方式
重启docker
systemctlrestartdocker
重新加迅蔽载镜像
dockerrun-d-p8888:8888renren
5、网页输入一个接口,查看返回情况
3、SpringBoot打包成jar并运行
jar方式
Gradle的buildJar
执行完后会下工程的build/libs下生成可以运行的jar文件
1、windows
更好的方式是写一个bat文件,双击就可以运行了
也可以做成windows服务,开机启动
可以使用第三方工具做成exe
2、linux
将jar程序梁念设置成后台运行,并且将标准输出的日志重定向至文件consoleMsg.log。
其中:nohup命令的作用就是让程序在后台运行,不用担心关闭连接进程断掉的问题了
如果使用nohup命令提交作昌升业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件
同理,也可以写一个sh文件
1、耐渣老windows
直接关
2、linux
如果想杀掉运行中的jar程序,查看进程命令为:
将会看到此jar的进程信息
其中30768则为此jar的pid,杀掉命令为
也可以写一个sh文件
Gradle+Nexus管理SpringBoot的Jar
SpringBoot使你能轻松地创建独立的、生产级的、基于Spring且能直接运行的应用程序。
Gradle是一种构建工具,和已有的ant、maven相比Gradle更简洁高效,胜任复纯哪链杂的构建任务,社区活跃,缓旅技术成熟。
SpringBootGradle插件在Gradle中提供SpringBoot支持,你可以做孙用它来做打包(生成可执行jar或war),运行SpringBoot应用程序,并提供的依赖关系管理spring-boot-dependencies。
SpringBoot的Gradle插件需要Gradle4.0或更高版本。
Nexus作为Gradle的私服,请参考
gradle默认有bootJar任务
需要jar包时执行bootJar命令即可。
上传开发版本运行devUpload命令,上传发布版本运行releaseUpload命令。