<p align="center">
<img src="https://img.shields.io/circleci/project/vuejs/vue/dev.svg" alt="Build Status">
<img src="https://img.shields.io/badge/Spring%20Cloud-Edgware-blue.svg" alt="Coverage Status">
<img src="https://img.shields.io/badge/Spring%20Boot-1.5.9-blue.svg" alt="Downloads">
</p>
<h2 align="center">Cola Cloud</h2>
Cola Cloud 基于 Spring Boot, Spring Cloud 构建微服务架构企业级开发平台,集成OAuth2认证、集成短信验证码登录、FlyWay数据库版本管理、网关集成Swagger聚合所有服务API文档。基于SpringBootAdmin集成Hystrix、Turbine监控。开发用户中心、权限管理、组织架构、数据字典、消息中心、通知中心等模块。
# 推荐
## [Cola-Auth](https://gitee.com/leecho/cola)
基于SpringBoot2/SpringSecurity/SpringSession/SpringSocial/SpringSecurityOAuth2构建的互联网应用基础框架,包含认证中心、消息通知、安全中心和用户中心。支持Session/JWT/OAuth2认证模式,支持账号密码/短信验证码/社会化登录等登录模式。接入支付宝/微信/QQ/微信公众号/微信小程序等第三方平台,支持Web应用和App应用,可快速构建SSO平台和OpenAPI平台。
## 服务介绍
项目名称 | 编号 | 名称 | 说明
------------- | ------------- | ------------------------- | -------------
cola-cloud-auth | auth-service | 认证服务 | 基于SpringSecurity进行安全认证,采用OAuth2.0认证体系,对客户端、用户进行认证及授权,支持账号密码登录,短信验证码登录
cola-cloud-config | config | 配置服务 | 基于Spring Cloud构建统一配置服务,负责管理所有服务的配置文件
cola-cloud-devtools | 无 | 开发工具 | Cola 代码生成器
cola-cloud-gateway | gateway | 服务网关 | 基于Zuul构建服务网关,并对服务进行负载,前只实现静态路由
cola-cloud-monitor | monitor | 服务监控 | 基于Spring Boot Admin集成Turbine,Hystrix,对应用状态进行监控,对服务调用进行追踪和对熔断进行监测
cola-cloud-message | message | 通知中心 | 公共基础通知服务,支持系统消息、短信、邮件、推送通知
cola-cloud-registry | registry | 服务注册 | 基于Euraka构建服务注册中心,负责服务注册于发现
cola-cloud-common | common-service | 基础服务 | 聚合Cola平台所有公共服务
cola-cloud-organization | organization-service | 组织架构 | 提供组织架构、员工、岗位等服务
cola-cloud-tenancy | tenancy-service | 租户服务 | 提供租户以及租户成员服务
cola-cloud-uc | uc-service | 租户服务 | 用户中心 | 提供系统用户、用户注册服务
cola-cloud-upm | upm-service | 权限服务 | 提供角色、资源、授权服务
cola-cloud-notification | notification-service | 通知中心 | 基于RabbitMQ异步通知发送短信、邮件、WebSocket消息
## 快速启动
### 下载代码
```jshelllanguage
git clone https://gitee.com/leecho/cola-cloud.git
```
### 配置HOST
Spring Cloud中的每个服务都是独立部署,所有在进行服务之间调用的时候需要确定对方服务的IP,为了规避IP变化带来代码修改的风险,所以需要配置host
```jshelllanguage
# 注册中心 配置中心
127.0.0.1 registry api-gateway
# reids rabbitmq mysql
127.0.0.1 cola-redis cola-rabbitmq cola-mysql
```
### 环境变量
环境变量主要是配置服务的访问用户名和密码:
```
//配置服务器用户名
CONFIG_SERVER_USERNAME
//配置服务器密码
CONFIG_SERVER_PASSWORD
//注册服务器用户名
REGISTRY_SERVER_USERNAME
//注册服务器密码
REGISTRY_SERVER_PASSWORD
//监控服务器用户名
MONITOR_SERVER_USERNAME
//监控服务器密码
MONITOR_SERVER_PASSWORD
//MYSQL用户名
MYSQL_SERVER_USERNAME
//MYSQL密码
MYSQL_SERVER_PASSWORD
//RabbitMQ用户名
RABBITMQ_SERVER_USERNAME
//RabbitMQ密码
RABBITMQ_SERVER_PASSWORD
//Redis用户名
REDIS_SERVER_USERNAME
//Redis密码
REDIS_SERVER_PASSWORD
```
### 启动服务
启动顺序如下:```registry config auth-service uc-serivce upm-service organization-service gateway monitor```
registry必须要最先启动,registry启动之后提供接口以供其他服务进行注册
config在registry之后启动,config负责提供给其他服务配置信息,如果config没有启动,其他服务则无法启动
其他service在config之后启动,如果是第一次运行项目,启动config之后先启动uc-service进行数据初始化
gateway在最后启动,如果gateway先于其他服务启动,可能无法代理到其他服务,不过会在一段时间后重新代理
monitor,在config启动之后即可启动
### 访问
```js
http://localhost:80/ 服务网关,已经聚合了所有服务的Swagger
http://localhost:8761/ 注册中心,可以查看服务注册情况
http://localhost:8080/ 监控中心,可以查看服务运行状态
```
### 获取ACCESS_TOKEN
```js
curl -X POST \
http://api-gateway/uaa/oauth/token \
-H 'Cache-Control: no-cache' \
-H 'Postman-Token: 40aa591e-8518-4c1f-9e2d-f0c0e6151a40' \
-H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
-F username=admin \
-F password=111111 \
-F grant_type=password \
-F scope=ui
```
## 基础服务
### 配置服务
Spring Cloud Config 负责所有服务的配置,可以使用本地文件、GIT等方式存储分发配置文件
##### 客户端配置
需要在POM中引入`spring-cloud-starter-config` 依赖, 根据约定自动状态
在项目中需要设置配置服务的信息,例如配置服务器的地址,访问的用户名和密码等信息,在resources目录下 `bootstrap.yml` 文件配置
```yml
spring:
application:
name: message-service
cloud:
config:
uri: http://config:8888
fail-fast: true
```
### 认证服务
Spring Security OAuth2 客户端配置
```yml
security:
oauth2:
client:
clientId: server
clientSecret: server
accessTokenUri: http://auth-service:5000/uaa/oauth/token
grant-type: client_credentials
scope: server
```
``` java
@PreAuthorize("#oauth2.hasScope('server')")
@RequestMapping(value = "accounts/{name}", method = RequestMethod.GET)
public List<DataPoint> getStatisticsByAccountName(@PathVariable String name) {
return statisticsService.findByAccountName(name);
}
```
### 服务网关
```yml
zuul:
routes:
message-service:
path: /notifications/**
serviceId: message-service
stripPrefix: false
```
### 注册中心
``` yml
spring:
application:
name: message-service
```
## 配置
### 短信配置
```yml
cola:
sms: #短信配置
type: aliyun
aliyun:
access-key-id:
access-key-secret:
```
### 存储配置
```yml
cola:
storage:
type: aliyun
oss:
access-key-id:
access-key-secret:
bucket-name:
endpoint:
```
## 系统截图
### 获取Token
![](images/token.png)
### 注册中心
![](images/registry.png)
### API文档
![](images/gateway.png)
### 监控中心
![](images/monitor.png)
### 监控详细信息
![](images/detail.png)
### 链路追踪
![](images/zipkin.jpg)
### 代码生成器
![](images/generator.png)
QQ交流群:736697444
没有合适的资源?快使用搜索试试~ 我知道了~
Cola Cloud v1.0.zip
共601个文件
java:342个
xml:62个
js:49个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 201 浏览量
2024-03-18
21:27:14
上传
评论
收藏 4.36MB ZIP 举报
温馨提示
Cola Cloud v1.0.zip
资源推荐
资源详情
资源评论
收起资源包目录
Cola Cloud v1.0.zip (601个子文件)
share.css 287KB
share.min.css 239KB
style.css 55KB
launch.css 20KB
animation.css 12KB
app.min.css 8KB
control.min.css 2KB
dashboard.min.css 1KB
Dockerfile 255B
Dockerfile 181B
Dockerfile 176B
Dockerfile 175B
Dockerfile 167B
Dockerfile 165B
fontawesome-webfont.eot 55KB
fontawesome-webfont.eot 55KB
museo-500.eot 36KB
museo-300.eot 36KB
museo-100.eot 36KB
Simple-Line-Icons.eot 35KB
Simple-Line-Icons.eot 35KB
glyphicons-halflings-regular.eot 20KB
glyphicons-halflings-regular.eot 20KB
iconfont.eot 7KB
iconfont.eot 7KB
spring.factories 155B
spring.factories 154B
spring.factories 148B
spring.factories 129B
[email protected] 12KB
[email protected] 11KB
logo_large.gif 6KB
logo.gif 6KB
piggy.gif 6KB
piggy_large.gif 5KB
logotext_large.gif 4KB
preloader.gif 3KB
logotext.gif 2KB
github.gif 2KB
.gitignore 101B
.gitignore 9B
说明.htm 4KB
home.html 31KB
index.html 11KB
index.html 2KB
attribution.html 1KB
index.html 149B
StringUtils.java 31KB
BaseServiceImpl.java 19KB
ServiceAssert.java 12KB
CryptUtils.java 9KB
SysResourceServiceImpl.java 9KB
SysUserServiceImpl.java 9KB
SysResourceCacheService.java 9KB
VerificationCodeUtils.java 9KB
DatabaseCachableClientDetailsService.java 8KB
FileUtils.java 7KB
VerificationCodeServiceImpl.java 7KB
SysEmployeeServiceImpl.java 7KB
GlobalExceptionHandler.java 7KB
MailSender.java 7KB
SysTenantServiceImpl.java 6KB
SysAuthorityServiceImpl.java 6KB
SysAuthorizeServiceImpl.java 6KB
CriteriaParser.java 6KB
GenerateService.java 6KB
SysUserController.java 5KB
WechatMaConfiguration.java 5KB
MessageServiceImpl.java 5KB
SysOrganizationServiceImpl.java 5KB
DictServiceImpl.java 4KB
AliyunSmsSender.java 4KB
IntegrationAuthenticationFilter.java 4KB
SysLogAspectService.java 4KB
GeneralVerificationCodeCache.java 4KB
AttachmentServiceImpl.java 4KB
SecurityAccessMetadataSource.java 4KB
AttachmentController.java 4KB
IdUtils.java 4KB
LocalFileStorage.java 4KB
Result.java 4KB
InParser.java 4KB
DateUtils.java 4KB
AuthorizationServerConfiguration.java 4KB
SmsIntegrationAuthenticator.java 4KB
VerificationCodeService.java 4KB
BetweenAndParser.java 3KB
User.java 3KB
SecurityAccessAutoConfiguration.java 3KB
CommonMapper.java 3KB
BeanUtils.java 3KB
SysResourceController.java 3KB
SysTenantController.java 3KB
BaseController.java 3KB
ZipUtils.java 3KB
SysRoleServiceImpl.java 3KB
共 601 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
芝麻粒儿
- 粉丝: 6w+
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功