Mcloud

基于Spring Cloud,实现微服务中常用的基础模块,包括 OAuth2 认证服务,统一注册中心,系统监控中心, 统一配置中心,API网关以及熔断器
Alternatives To Mcloud
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Pig4,760
a day ago272apache-2.0Java
↥ ↥ ↥ 点击关注更新,基于 Spring Cloud 2021 、Spring Boot 2.7、 OAuth2 的 RBAC 权限管理系统
Springdoc Openapi2,6235296 days ago139August 21, 20226apache-2.0Java
Library for OpenAPI 3 with spring-boot
Pac4j2,2731461292 days ago96September 08, 2022apache-2.0Java
Security engine for Java (authentication, authorization, multi frameworks): OAuth, CAS, SAML, OpenID Connect, LDAP, JWT...
Liugh Parent2,252
7 months ago15Java
SpringBoot+SpringCloud Oauth2+JWT+MybatisPlus实现Restful快速开发后端脚手架
Spring Boot Quick2,152
3 months ago12Java
:herb: 基于springboot的快速学习示例,整合自己遇到的开源框架,如:rabbitmq(延迟队列)、Kafka、jpa、redies、oauth2、swagger、jsp、docker、k3s、k3d、k8s、mybatis加解密插件、异常处理、日志输出、多模块开发、多环境打包、缓存cache、爬虫、jwt、GraphQL、dubbo、zookeeper和Async等等:pushpin:
Javasourcecodelearning2,092
a year ago1Java
Java流行框架源码分析:Spring源码、SpringBoot源码、SpringAOP源码、SpringSecurity源码、SpringSecurity OAuth2源码、JDK源码、Netty源码
Community2,082
a year ago16mitJava
开源论坛、问答系统,现有功能提问、回复、通知、最新、最热、消除零回复功能。功能持续更新中…… 技术栈 Spring、Spring Boot、MyBatis、MySQL/H2、Bootstrap
Spring Boot Cloud1,944
4 years ago22Java
基于 Spring Boot、Spring Cloud、Spring Oauth2 和 Spring Cloud Netflix 等框架构建的微服务项目
Spring Security Oauth1,888
a month ago3mitJava
Just Announced - "Learn Spring Security OAuth":
Spring Boot Microservices1,544
4 years ago12apache-2.0Java
Spring Boot Template for Micro services Architecture - Show cases how to use Zuul for API Gateway, Spring OAuth 2.0 as Auth Server, Multiple Resource (Web Services) Servers, Angular Web App, Eureka dor registration and Discover and Hystrix for circuit breaker
Alternatives To Mcloud
Select To Compare


Alternative Project Comparisons
Readme

MCloud - 微服务基础设施

Build Status Coverage Status License

项目简介

MCloud 基于 Spring Cloud 进行开发,提供了项目中常用的基础设施:

  • mcloud-registry 服务注册与发现中心。
  • keycloak 用户认证和管理。
  • mcloud-apigw 基于Spring cloud gateway 实现的 API 网关 ,同时使用了 netflix-ribbon 作为负载均衡器。
  • mcloud-config 基于 GitHub 的统一配置中心(此项目使用 这个 repo 作为配置存储库)。
  • mcloud-logs 基于logstash Kibana 以及 ElasticSearch 实现的日志服务。
  • mcloud-demo Demo Project
  • mcloud-console 基于 ant-design-pro 搭建的系统控制台(因升级 Spring Cloud 版本缘故,此模块暂不可用)。

其他:

Dependencies

  • Spring Boot 2.1.3.RELEASE
  • Spring Cloud Greenwich.RELEASE
  • Maven
  • JDK 1.8
  • ......

环境依赖

  • JDK 1.8 以上

  • IDE 请安装对应IDE的 lombok 插件

  • Keycloak

    **注:**在安装完 keycloak 后,需要将 mcloud/data 目录下的 realm-export.json 导入 keycloak ,并手动重置 mcloud realm 下的 mcloud 客户端的 clientSecret,并将新的 clientSecret 填入 mcloud-demo 下的 application.yml 中。

Quick Start

克隆项目到本地

git clone https://github.com/heyuxian/mcloud.git

构建及运行

因为项目使用配置优先的方式,所以需要先启动 mcloud-config 模块,然后依次启动 mcloud-registrymcloud-apigwmcloud-demo

启动配置中心:

cd mcloud-config
mvn clean install spring-boot:run

启动注册中心:

cd mcloud-registry
#分别在三个终端运行以下命令,用于启动多个注册节点
mvn clean install spring-boot:run -Dspring.profiles.active=peer1
mvn clean install spring-boot:run -Dspring.profiles.active=peer2
mvn clean install spring-boot:run -Dspring.profiles.active=peer3

启动 API 网关:

cd mcloud-apigw
mvn clean install spring-boot:run

启动示例项目:

cd mcloud-demo
mvn clean install
#分别在两个终端运行以下命令,用于启动两个节点
mvn spring-boot:run -Dspring.profiles.active=peer1
mvn spring-boot:run -Dspring.profiles.active=peer2

所有节点都启动完成后,还需要获取 access_token ,之后,我们就可以使用这个 token 来访问我们的 API:

curl --request GET \
  --url http://localhost/mcloud-demo/users/me \
  --header 'authorization: Bearer ${access_token}' \
  --header 'cache-control: no-cache' \
  --header 'content-type: application/json' \
  --data '{}'

问题及建议

若是对于本项目有任何问题或建议,请提 Issue

Popular Spring Projects
Popular Oauth Projects
Popular Frameworks Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Java
Cloud Computing
Spring
Rest Api
Spring Boot
Oauth
Microservices
Ide
Ant Design
Spring Cloud
Spring Security
Lombok