实战SpringBoot Admin

实战SpringBoot Admin这里写目录标题声明动机前提声明 nbsp nbsp nbsp nbsp 该文章是针对于开发人员来讲 适用于实战 话不多说 直接上步骤 动机 nbsp nbsp nbsp nbsp 我已经发布一篇关于 Windos 上使用 Nacos 的文章了 Nacos 入驻与配置服务 然后私下想了想 干脆把 CentOs 上如何使用 Nacos 的文章也写一篇吧 然后这不 此文章就诞生了 前提

声明

    见名知意,实战SpringBoot Admin,实战!实战!实战!该文章环绕SpringBoot Admin的重点功能(邮件通知、可视化)来讲解。

先锋

    在写该文章之前,我也是查阅了一些关于SpringBoot Admin的文章的,一言难尽,不太理想啊(无法解决实际问题)…嗐…就让我来做这个先锋吧

前提

  1. Spring Cloud 版本:Finchley.RELEASE(支持SpringBoot 2.x.x以上版本)
  2. SpringBoot Admin版本:2.0.1
  3. SpringBoot版本:2.0.2.RELEASE
  4. Centos版本:7.x

SpringBoot Admin

介绍

    SpringBoot Admin是一个社区项目.用于管理和监控SpringBoot应用程序,注册到SpringBoot Admin服务端可以通过HTTP的方式或使用SpringCloud(eureka、consul、nacos)等

这个图是我自己画的,只是简单的画了一下,画的不太好,请见谅
在这里插入图片描述
在这里插入图片描述




服务端的搭建

 <!--SpringBoot Admin服务端 --> <dependency> <groupId>org.jolokia</groupId> <artifactId>jolokia-core</artifactId> <jolokia.version>1.5.0</jolokia.version> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> <version>2.0.1</version> </dependency> <!-- SpringBoot Admin的ui界面 --> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui</artifactId> <version>2.0.2</version> </dependency> <!--安全,保护SpringBoot Admin,使用时详细讲解--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> <version>2.0.2.RELEASE</version> </dependency> 

配置文件的配置(yml格式)

#端口号 server: port: 28820 spring: #微服务实例名称  application: name: POWERSERVICE-DOCKER --- #设置SpringBootAdmin的属性  spring: boot: admin: ui: title: 'power-monitoring' #设置security的用户名和密码  security: user: name: admin password: admin12345 --- #设置SpringBoot Admin的邮箱通知 spring: mail: #邮箱服务器地址 host: smtp.exmail..com #邮箱用户名  username: xxxxx #邮箱密码  password: xxxxx port: 465 #stmp的方式开启 properties: mail.smtp.auth: true mail.host: smtp.exmail..com #设置smtp格式的SSL方式的端口号  smtp.socketFactory.port: 465 #使用SSL的方式发送 mail.smtp.socketFactory.class: javax.net.ssl.SSLSocketFactory #发送邮箱  boot: admin: notify: mail: #邮箱发件人  from: xxxxx #邮箱接收人,多个地址逗号隔开  to: - xxxxx 

在这里插入图片描述
配置SpringBoot Admin服务端启动类

@EnableAutoConfiguration @Configuration @EnableAdminServer @SpringBootApplication(exclude = DataSourceAutoConfiguration.class) public class Admin_power extends WebSecurityConfigurerAdapter { 
    private final String contextPath; public Admin_power(AdminServerProperties adminServerProperties) { 
    this.contextPath = adminServerProperties.getContextPath(); } @Override protected void configure(HttpSecurity http) throws Exception { 
    // 跨域设置 客户端通过instances注册(为后续docker做准备) http.csrf().csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse()) .ignoringAntMatchers(contextPath + "/instances"); http.authorizeRequests().antMatchers(contextPath + "/assets/").permitAll(); // 静态资源 http.authorizeRequests().anyRequest().authenticated(); //认证 // spring-boot-admin-server-ui http.formLogin().loginPage("/login").permitAll(); http.logout().logoutUrl("/logout").logoutSuccessUrl("/login"); // basic认证 http.httpBasic(); } public static void main(String[] args) { 
    SpringApplication.run(Admin_power.class, args); } } 

启动类配置解释: 与Security搭配使用(实现拦截功能,登录功能),代码不是我自己编写的,SpringBoot Admin官方提供
在这里插入图片描述

本地测试
    到这里的话,就代表SpringBoot Admin服务端已经配置好了(注意项目自己创建),先在本地测试下,如果没问题的话就部署到云端
在这里插入图片描述
在这里插入图片描述
打包发布
    我打包的话是通过cmd命令的(jar包)
在这里插入图片描述在这里插入图片描述
将打好的jar包上传到云端服务器中
在这里插入图片描述
通过docker来进行打包命令(步骤:打包>>>生成镜像>>>运行镜像),打包过程就不演示了,详细可以查看docker官网中的命令讲解
在这里插入图片描述
我生成的镜像包的名称命名为”powdockeradmin”,接下来开始运行镜像包
在这里插入图片描述
























docker run -d -p 28820:28820 powdockeradmin 运行镜像 docker ps 查看运行的镜像 docker logs --since 10m 容器id 查看指定容器的日志 

需要注意: 端口号是对外映射的,我这里在是提前开放好公网出方向的端口了,所以如果你们无法访问的话,查看一下是否没有开放端口
在这里插入图片描述
外网测试
    外网测试也是通的,这也就意味着SpringBoot Admin的服务端已经拿下了,接下来就需要配置客户端了
在这里插入图片描述








客户端的搭建

#监控服务配置  spring: boot: admin: client: #服务入驻SpringBoot Admin的地址  url: - SpringBoot Admin服务端的地址 #要注册的服务网址  instance: service-url: 注册服务端的服务网址(docker地址) 地址+端口 username: admin password: admin12345 management: endpoints: web: exposure: include: '*' 

在这里插入图片描述
pom.xml文件的依赖

 <!-- SpringBoot Admin客户端 --> <dependency> <groupId>org.jolokia</groupId> <artifactId>jolokia-core</artifactId> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> <version>2.0.1</version> </dependency> <!-- SpringBoot Admin的ui界面 --> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui</artifactId> <version>2.0.1</version> </dependency> 

我这里是创建了两个客户端的实例服务,并将它们都上传到服务器中,并且打包成镜像运行了起来,镜像启动之后,可以通过以下命令获取容器在docker中ip地址,然后配置到instance下的service-url属性上

docker inspect 容器id 查看容器的详细信息 
spring: boot: admin: client: #服务入驻SpringBoot Admin的地址  url: - SpringBoot Admin服务端地址 #要注册的服务网址  instance: service-url: http://192.168.0.5:28840 username: admin password: admin12345 management: endpoints: web: exposure: include: '*' 

参数的指南

尾声

    到了这里,也就意味着文章的完结了,如果文章中有疑惑或认为不对的地方都可以通过评论提出来,我会吸取您的宝贵意见,最后记得点赞哦,谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/198827.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午2:23
下一篇 2026年3月26日 下午2:23


相关推荐

  • Optimistic vs Multi Version Concurrency Control – Differences?

    Optimistic vs Multi Version Concurrency Control – Differences?

    2021年8月26日
    61
  • 带通滤波器幅频特性曲线图_滤波器和对讲机技术解析!「建议收藏」

    带通滤波器幅频特性曲线图_滤波器和对讲机技术解析!「建议收藏」滤波器是一种选频装置,可以使对讲机信号中特定的频率成分通过,而极大地衰减其它频率成分。但是关于滤波器是什么,估计非专业人士肯定是一头雾水,今天小编就整理了一些滤波器的知识,供大家参考:一、概述1、定义凡是可以使信号中特定的频率成分通过,而极大地衰减或抑制其他频率成分的装置或系统都称之为滤波器,相当于频率“筛子”。2、分类幅频特性如下:频率通带:能通过滤波器的频率范围。频率阻带:被滤波器抑…

    2022年5月31日
    34
  • 1.javascript的typeof返回哪些数据类型

    1.javascript的typeof返回哪些数据类型javascript 的 typeof 返回哪些数据类型详解

    2026年3月17日
    2
  • python线性规划模型求解_python线性规划算法

    python线性规划模型求解_python线性规划算法各位童鞋们大家好,我是小小明,前几天我给大家分享了一个SMT求解器z3,链接地址见:https://xxmdmst.blog.csdn.net/article/details/120279521虽然SMT求解器很强大,能够解逻辑题、解数独、解方程、甚至解决逆向问题,但是有个缺点就是只能找出一个可行解,如果我想要找出可行解的最大值或最小值就不行,无法完成类似Excel的规划求解的功能。前文中已经提到了scipy这个库可以进行线性规划求解,可惜我在这周的实际测试中发现,不支持整数约束,只能求解出实数。差.

    2025年11月14日
    3
  • python京东自动签到领金豆_github京东自动签到

    python京东自动签到领金豆_github京东自动签到一.介绍PhantomJS是一个基于WebKit的JavaScriptAPI,它使用QtWebKit作为它核心浏览器的功能,使用WebKit来编译解释执行JavaScript代码,任何你可以在基于WebKit浏览器做的事情,它都能做到。Selenium是一个用于Web应用自动化程序测试的工具,可以让浏览器自动加载页面,获取需要的数据,Selenium自己不带浏览器,所以需要和PhantomJS、…

    2025年12月3日
    4
  • PyTorch源码解读之torch.utils.data.DataLoader「建议收藏」

    PyTorch源码解读之torch.utils.data.DataLoader「建议收藏」PyTorch中数据读取的一个重要接口是torch.utils.data.DataLoader,该接口定义在dataloader.py脚本中,只要是用PyTorch来训练模型基本都会用到该接口,该接口主要用来将自定义的数据读取接口的输出或者PyTorch已有的数据读取接口的输入按照batchsize封装成Tensor,后续只需要再包装成Variable即可作为模型的输入,因此该接口有点承上启下的

    2022年6月12日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号