# Chrix Cloud
## 项目介绍
### 功能列表
- 单点登录:整合Spring oAuth2 使用手机号密码登录
- 用户管理:用户属于单角色、单部门,支持扩展字段
- 部门管理:单继承机构,支持增删改查
- 角色管理:支持角色授权,支持角色授予权限
- 菜单管理:可配置用户界面菜单,支持权限限制,支持服务下线自动关闭菜单
- 路由管理:可动态配置Spring gateway路由,支持各种predicate、filter,内置支持限流
- 文档上传: 支持接入阿里云OSS、七牛存储文档
- 服务监控:支持服务异常通知(邮件、钉钉)
- 接口文档:自定义swagger ui,通过eureka聚合组件的接口文档
- 代码生成:通过表结构生成前后端代码
- 服务监控: 集成Spring Boot Admin
- 任务调度: 集成xxl-job,支持分布式调度
- 调用链追踪:集成zipkin,数据保存在ElasticSearch;集成pinpoint,数据保存在hbase。可自由选择
### 接口文档
## 依赖
### MySQL 5.7
### Redis
### Rabbit MQ
### Logstash
### ELK
### zipkin
### pinpoint
### xxl-job
### Portainer
### Jenkins
## 部署
### WAR
### Docker
## 目录结构
### cc-config
### cc-eureka
### cc-admin
### cc-oauth2
### cc-gateway
### cc-user
### cc-app
### cc-job
### cc-common
### code-generator
### docker
### logstash
### pinpoint
### xxl-job-admin
### zipkin
### scripts
#### 项目介绍
卡券生态系统(对接供应商、卡券管理、商城)
Zipkin在Spring Boot 2.0以后推荐使用独立jar的方式启动
开发环境可以使用In-Memory方式存储数据
本项目使用Elasticsearch存储数据
Zipkin Server下载地址:
https://repo1.maven.org/maven2/io/zipkin/java/zipkin-server/2.11.1/zipkin-server-2.11.1-exec.jar
RabbitMQ + ElasticSearch + Zipkin启动:
QUERY_PORT=6004 RABBIT_URI=amqp://root:root@my.com:5672/zipkin STORAGE_TYPE=elasticsearch ES_HOSTS=my.com:9200 java -jar zipkin-dependencies.jar
QUERY_PORT=ZipkinPort RABBIT_URI=amqp://user:password@host:5672/vhost STORAGE_TYPE=elasticsearch ES_HOSTS=my.com:9200 java -jar zipkin-dependencies.jar
Zipkin跨域设置:
ZIPKIN_QUERY_ALLOWED_ORIGINS=http://foo.bar.com
Zipkin端口设置:
QUERY_PORT=6004
Zipkin参数说明:
https://github.com/openzipkin/zipkin/tree/master/zipkin-server#environment-variables
## 启动
### 1、启动ElasticSearch
### 2、启动Logstash
### 3、启动RabbitMQ
### 4、启动Redis
### 5、启动zipkin
- 必须依赖ElasticSearch
### 6、启动ceo-config
- 必须依赖RabbitMQ
- 普通依赖zipkin、ceo-eureka
### 7、启动ceo-eureka
- 必须依赖RabbitMQ、ceo-config
- 普通依赖zipkin
### 8、启动ceo-admin
- 必须依赖RabbitMQ、ceo-config、ceo-eureka
- 普通依赖zipkin
### 9、启动ceo-gateway
- 必须依赖RabbitMQ、ceo-config、ceo-eureka
- 普通依赖zipkin、Redis
### 10、启动Kibana
- 必须依赖ElasticSearch