parent
1170e44b61
commit
80024f5214
|
@ -87,3 +87,5 @@ lint/tmp/
|
|||
|
||||
/.idea/
|
||||
target/
|
||||
|
||||
.env
|
|
@ -6,9 +6,8 @@
|
|||
1. **xxl-job 调度管理中心** :提供对分布式的任务集中监控、管理等功能
|
||||
2. **xxl-job 执行器** :消息中心的业务逻辑实现,目前只实现「系统通知」功能,后续可以考虑 `email-executor`、`text-message-executor` 等实现
|
||||
3. **GNS-Writer**:给 `Forge业务层` 调用的 API 网关,负责从业务逻辑层接受信息
|
||||
4. **MQ**:独立运行的消息中间件服务
|
||||
4. **middleware**:独立运行的中间件服务, 包括消息中间件、缓存中间件、DB
|
||||
5. **GNS-Reader**:给 `Forge业务层` 调用的 API 网关,负责提供业务数据
|
||||
6. **Redis**:独立运行的缓存中间件服务
|
||||
|
||||
### 一些约定:
|
||||
|
||||
|
|
13
db/mysql.yml
13
db/mysql.yml
|
@ -1,13 +0,0 @@
|
|||
version: '3'
|
||||
services:
|
||||
mysql:
|
||||
restart: always
|
||||
image: mysql:5.7.16
|
||||
container_name: my_mysql
|
||||
volumes:
|
||||
- ${MYSQL_DIR}/data:/var/lib/mysql
|
||||
- ./conf/my.cnf:/etc/my.cnf
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
||||
ports:
|
||||
- 3306:3306
|
|
@ -2,8 +2,8 @@
|
|||
# XXL-JOB v2.3.0
|
||||
# Copyright (c) 2015-present, xuxueli.
|
||||
|
||||
CREATE database if NOT EXISTS `xxl_job` default character set utf8mb4 collate utf8mb4_unicode_ci;
|
||||
use `xxl_job`;
|
||||
CREATE database if NOT EXISTS `gitlink` default character set utf8mb4 collate utf8mb4_unicode_ci;
|
||||
use `gitlink`;
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
# Environment Variables for docker-compose
|
||||
|
||||
# Images config
|
||||
MYSQL_VERSION=5.7.35
|
||||
REDIS_VERSION=latest
|
||||
KAFKA_VERSION=latest
|
||||
|
||||
# Containers config
|
||||
MYSQL_CONTAINER_NAME=gitlink_mysql
|
||||
REDIS_CONTAINER_NAME=gitlink_redis
|
||||
|
||||
# Ports config
|
||||
MYSQL_LOCAL_PORT=3306 ##TODO: Change port number to your lcoal port
|
||||
REDIS_LOCAL_PORT=6379 ##TODO: Change port number to your lcoal port
|
||||
ZOOKEEPER_LOCAL_PORT=2181 ##TODO: Change port number to your lcoal port
|
||||
KAFKA_LOCAL_PORT=9092 ##TODO: Change port number to your lcoal port
|
||||
KAFKA_MANAGER_LOCAL_PORT=9003 ##TODO: Change port number to your lcoal port
|
||||
|
||||
# Hosts config
|
||||
KAFKA_HOST=172.16.15.29
|
||||
|
||||
# Path config
|
||||
MYSQL_WORK_PATH=D:\repos\mysql-docker ## TODO: Change path to your local file system path
|
||||
MYSQL_DATA_PATH=D:\repos\mysql-docker ## TODO: Change path to your local file system path
|
||||
REDIS_WORK_PATH=D:\repos\redis-docker ## TODO: Change path to your local file system path
|
||||
|
||||
|
||||
# Mysql config
|
||||
MYSQL_ROOT_PASSWORD=gitLiNk_827
|
||||
MYSQL_USER=gitlink
|
||||
MYSQL_PASSWORD=giTlinK0^827
|
||||
MYSQL_DATABASE=gitlink
|
||||
|
||||
# Kafka config
|
||||
KAFKA_LOG_RETENTION_HOURS=120
|
||||
KAFKA_MESSAGE_MAX_BYTES=10000000
|
||||
KAFKA_REPLICA_FETCH_MAX_BYTES=10000000
|
||||
KAFKA_GROUP_MAX_SESSION_TIMEOUT_MS=60000
|
||||
KAFKA_NUM_PARTITIONS=3
|
||||
KAFKA_DELETE_RETENTION_MS=1000
|
|
@ -0,0 +1,5 @@
|
|||
# 中间件使用说明
|
||||
将示例文件复制为 .env,然后按需修改相关环境变量
|
||||
```shell script
|
||||
cp .env.example .env
|
||||
```
|
|
@ -0,0 +1,52 @@
|
|||
version: '3'
|
||||
services:
|
||||
db:
|
||||
image: mysql:${MYSQL_VERSION}
|
||||
container_name: ${MYSQL_CONTAINER_NAME}
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
volumes:
|
||||
- ${MYSQL_DATA_PATH}/gitlink_data:/var/lib/mysql
|
||||
- ${MYSQL_WORK_PATH}/sql/structure.sql:/docker-entrypoint-initdb.d/0000.sql
|
||||
ports:
|
||||
- ${MYSQL_LOCAL_PORT}:3306
|
||||
|
||||
redis:
|
||||
image: redis:${REDIS_VERSION}
|
||||
container_name: ${REDIS_CONTAINER_NAME}
|
||||
volumes:
|
||||
- ${REDIS_WORK_PATH}/data:/data
|
||||
- ${REDIS_WORK_PATH}/redis.conf:/usr/local/etc/redis/redis.conf
|
||||
- ${REDIS_WORK_PATH}/logs:/logs
|
||||
ports:
|
||||
- ${REDIS_LOCAL_PORT}:6379
|
||||
|
||||
zookeeper:
|
||||
image: wurstmeister/zookeeper
|
||||
ports:
|
||||
- ${ZOOKEEPER_LOCAL_PORT}:2181
|
||||
kafka:
|
||||
image: wurstmeister/kafka
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
ports:
|
||||
- ${KAFKA_LOCAL_PORT}:9092
|
||||
environment:
|
||||
KAFKA_ADVERTISED_HOST_NAME: ${KAFKA_HOST}
|
||||
KAFKA_ZOOKEEPER_CONNECT: ${KAFKA_HOST}:${ZOOKEEPER_LOCAL_PORT}
|
||||
KAFKA_ADVERTISED_PORT: ${KAFKA_LOCAL_PORT}
|
||||
KAFKA_LOG_RETENTION_HOURS: ${KAFKA_LOG_RETENTION_HOURS}
|
||||
KAFKA_MESSAGE_MAX_BYTES: ${KAFKA_MESSAGE_MAX_BYTES}
|
||||
KAFKA_REPLICA_FETCH_MAX_BYTES: ${KAFKA_REPLICA_FETCH_MAX_BYTES}
|
||||
KAFKA_GROUP_MAX_SESSION_TIMEOUT_MS: ${KAFKA_GROUP_MAX_SESSION_TIMEOUT_MS}
|
||||
KAFKA_NUM_PARTITIONS: ${KAFKA_NUM_PARTITIONS}
|
||||
KAFKA_DELETE_RETENTION_MS: ${KAFKA_DELETE_RETENTION_MS}
|
||||
kafka-manager:
|
||||
image: sheepkiller/kafka-manager
|
||||
environment:
|
||||
ZK_HOSTS: ${KAFKA_HOST}
|
||||
ports:
|
||||
- ${KAFKA_MANAGER_LOCAL_PORT}:9000
|
28
mq/kafka.yml
28
mq/kafka.yml
|
@ -1,28 +0,0 @@
|
|||
version: '2'
|
||||
services:
|
||||
zookeeper:
|
||||
image: wurstmeister/zookeeper
|
||||
ports:
|
||||
- "2181:2181"
|
||||
kafka:
|
||||
image: wurstmeister/kafka
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime
|
||||
ports:
|
||||
- "9092:9092"
|
||||
environment:
|
||||
KAFKA_ADVERTISED_HOST_NAME: 172.16.15.29
|
||||
KAFKA_ZOOKEEPER_CONNECT: 172.16.15.29:2181
|
||||
KAFKA_ADVERTISED_PORT: 9092
|
||||
KAFKA_LOG_RETENTION_HOURS: 120
|
||||
KAFKA_MESSAGE_MAX_BYTES: 10000000
|
||||
KAFKA_REPLICA_FETCH_MAX_BYTES: 10000000
|
||||
KAFKA_GROUP_MAX_SESSION_TIMEOUT_MS: 60000
|
||||
KAFKA_NUM_PARTITIONS: 3
|
||||
KAFKA_DELETE_RETENTION_MS: 1000
|
||||
kafka-manager:
|
||||
image: sheepkiller/kafka-manager
|
||||
environment:
|
||||
ZK_HOSTS: 172.16.15.29
|
||||
ports:
|
||||
- "9003:9000"
|
|
@ -1,11 +0,0 @@
|
|||
version: '3'
|
||||
services:
|
||||
redis:
|
||||
image: redis:latest
|
||||
container_name: docker_redis
|
||||
volumes:
|
||||
- ${REDIS_DIR}/data:/data
|
||||
- ./conf/redis.conf:/usr/local/etc/redis/redis.conf
|
||||
- ${REDIS_DIR}/logs:/logs
|
||||
ports:
|
||||
- 6379:6379
|
Loading…
Reference in New Issue