|
|
|
@ -1,173 +1,181 @@
|
|
|
|
|
version: '3'
|
|
|
|
|
services:
|
|
|
|
|
|
|
|
|
|
mysql:
|
|
|
|
|
image: mysql:${MYSQL_VERSION}
|
|
|
|
|
container_name: ${MYSQL_CONTAINER_NAME}
|
|
|
|
|
hostname: mysql
|
|
|
|
|
environment:
|
|
|
|
|
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
|
|
|
|
- MYSQL_USER=${MYSQL_USER}
|
|
|
|
|
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
|
|
|
|
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/mysql:/var/lib/mysql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/gns-notification.sql:/docker-entrypoint-initdb.d/0001.sql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/hehui-gns-notification.sql:/docker-entrypoint-initdb.d/0002.sql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/gns-email.sql:/docker-entrypoint-initdb.d/0003.sql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/osredm-gns-notification.sql:/docker-entrypoint-initdb.d/0004.sql
|
|
|
|
|
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
|
|
|
|
ports:
|
|
|
|
|
- ${MYSQL_LOCAL_PORT}:3306
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
|
|
|
|
|
redis:
|
|
|
|
|
image: redis:${REDIS_VERSION}
|
|
|
|
|
container_name: ${REDIS_CONTAINER_NAME}
|
|
|
|
|
hostname: redis
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/redis/data:/data
|
|
|
|
|
- ${DOCKER_DATA_PATH}/redis/logs:/logs
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
ports:
|
|
|
|
|
- ${REDIS_LOCAL_PORT}:6379
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
|
|
|
|
|
# See Also: https://hub.docker.com/r/confluentinc/cp-zookeeper
|
|
|
|
|
zookeeper:
|
|
|
|
|
image: confluentinc/cp-zookeeper:latest
|
|
|
|
|
container_name: ${ZOOKEEPER_CONTAINER_NAME}
|
|
|
|
|
hostname: zookeeper
|
|
|
|
|
environment:
|
|
|
|
|
ZOOKEEPER_CLIENT_PORT: 2181
|
|
|
|
|
ZOOKEEPER_TICK_TIME: 2000
|
|
|
|
|
ports:
|
|
|
|
|
- ${ZOOKEEPER_LOCAL_PORT}:2181
|
|
|
|
|
# volumes:
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/zookeeper:/var/lib/zookeeper
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
|
|
|
|
|
# See Also: https://hub.docker.com/r/confluentinc/cp-kafka
|
|
|
|
|
kafka1:
|
|
|
|
|
image: confluentinc/cp-kafka:latest
|
|
|
|
|
container_name: ${KAFKA_CONTAINER_01_NAME}
|
|
|
|
|
hostname: kafka1
|
|
|
|
|
depends_on:
|
|
|
|
|
- zookeeper
|
|
|
|
|
ports:
|
|
|
|
|
- ${KAFKA_01_LOCAL_PORT}:29092
|
|
|
|
|
# volumes:
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_01_NAME}/lib:/var/lib/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_01_NAME}/logs:/var/logs/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_01_NAME}/conf:/etc/kafka
|
|
|
|
|
environment:
|
|
|
|
|
KAFKA_BROKER_ID: 1
|
|
|
|
|
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
|
|
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka1:9092,PLAINTEXT_HOST://localhost:${KAFKA_01_LOCAL_PORT}
|
|
|
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
|
|
|
|
|
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
|
|
|
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
|
|
|
|
|
# See Also: https://hub.docker.com/r/confluentinc/cp-kafka
|
|
|
|
|
kafka2:
|
|
|
|
|
image: confluentinc/cp-kafka:latest
|
|
|
|
|
container_name: ${KAFKA_CONTAINER_02_NAME}
|
|
|
|
|
hostname: kafka2
|
|
|
|
|
depends_on:
|
|
|
|
|
- zookeeper
|
|
|
|
|
ports:
|
|
|
|
|
- ${KAFKA_02_LOCAL_PORT}:39092
|
|
|
|
|
# volumes:
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_02_NAME}/lib:/var/lib/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_02_NAME}/logs:/var/logs/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_02_NAME}/conf:/etc/kafka
|
|
|
|
|
environment:
|
|
|
|
|
KAFKA_BROKER_ID: 2
|
|
|
|
|
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
|
|
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka2:9092,PLAINTEXT_HOST://localhost:${KAFKA_02_LOCAL_PORT}
|
|
|
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
|
|
|
|
|
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
|
|
|
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
|
|
|
|
|
gitlink-reader:
|
|
|
|
|
container_name: ${GNS_READER_CONTAINER_NAME}
|
|
|
|
|
hostname: gitlink_reader
|
|
|
|
|
image: gitlink/gns-reader:${GITLINK_NOTIFICATION_SYS_VERSION}
|
|
|
|
|
build:
|
|
|
|
|
context: ../
|
|
|
|
|
dockerfile: middleware/reader.Dockerfile
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/gitlink/:/data/logs/
|
|
|
|
|
depends_on:
|
|
|
|
|
- kafka1
|
|
|
|
|
- kafka2
|
|
|
|
|
- redis
|
|
|
|
|
- mysql
|
|
|
|
|
ports:
|
|
|
|
|
- ${GNS_READER_LOCAL_PORT}:8081
|
|
|
|
|
|
|
|
|
|
gitlink-writer:
|
|
|
|
|
container_name: ${GNS_WRITER_CONTAINER_NAME}
|
|
|
|
|
hostname: gitlink_writer
|
|
|
|
|
image: gitlink/gns-writer:${GITLINK_NOTIFICATION_SYS_VERSION}
|
|
|
|
|
build:
|
|
|
|
|
context: ../
|
|
|
|
|
dockerfile: middleware/writer.Dockerfile
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/gitlink/:/data/logs/
|
|
|
|
|
depends_on:
|
|
|
|
|
- kafka1
|
|
|
|
|
- kafka2
|
|
|
|
|
- redis
|
|
|
|
|
- mysql
|
|
|
|
|
ports:
|
|
|
|
|
- ${GNS_WRITER_LOCAL_PORT}:8082
|
|
|
|
|
|
|
|
|
|
gitlink-executor:
|
|
|
|
|
container_name: ${GNS_EXECUTOR_CONTAINER_NAME}
|
|
|
|
|
hostname: gitlink_executor
|
|
|
|
|
image: gitlink/gns-executor:${GITLINK_NOTIFICATION_SYS_VERSION}
|
|
|
|
|
build:
|
|
|
|
|
context: ../
|
|
|
|
|
dockerfile: middleware/executor.Dockerfile
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/gitlink/:/data/logs/
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
depends_on:
|
|
|
|
|
- kafka1
|
|
|
|
|
- kafka2
|
|
|
|
|
- redis
|
|
|
|
|
- mysql
|
|
|
|
|
ports:
|
|
|
|
|
- ${GNS_EXECUTOR_LOCAL_PORT}:8083
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
gitlink_network:
|
|
|
|
|
driver: bridge
|
|
|
|
|
name: gitlink_network
|
|
|
|
|
driver_opts:
|
|
|
|
|
com.docker.network.enable_ipv6: "true"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
version: '3'
|
|
|
|
|
services:
|
|
|
|
|
|
|
|
|
|
mysql:
|
|
|
|
|
image: mysql:${MYSQL_VERSION}
|
|
|
|
|
container_name: ${MYSQL_CONTAINER_NAME}
|
|
|
|
|
hostname: mysql
|
|
|
|
|
environment:
|
|
|
|
|
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
|
|
|
|
- MYSQL_USER=${MYSQL_USER}
|
|
|
|
|
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
|
|
|
|
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/mysql:/var/lib/mysql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/gns-notification.sql:/docker-entrypoint-initdb.d/0001.sql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/hehui-gns-notification.sql:/docker-entrypoint-initdb.d/0002.sql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/gns-email.sql:/docker-entrypoint-initdb.d/0003.sql
|
|
|
|
|
- ${SQL_SCRIPT_PATH}/osredm-gns-notification.sql:/docker-entrypoint-initdb.d/0004.sql
|
|
|
|
|
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
|
|
|
|
ports:
|
|
|
|
|
- ${MYSQL_LOCAL_PORT}:3306
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
redis:
|
|
|
|
|
image: redis:${REDIS_VERSION}
|
|
|
|
|
container_name: ${REDIS_CONTAINER_NAME}
|
|
|
|
|
hostname: redis
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/redis/data:/data
|
|
|
|
|
- ${DOCKER_DATA_PATH}/redis/logs:/logs
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
ports:
|
|
|
|
|
- ${REDIS_LOCAL_PORT}:6379
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
# See Also: https://hub.docker.com/r/confluentinc/cp-zookeeper
|
|
|
|
|
zookeeper:
|
|
|
|
|
image: confluentinc/cp-zookeeper:latest
|
|
|
|
|
container_name: ${ZOOKEEPER_CONTAINER_NAME}
|
|
|
|
|
hostname: zookeeper
|
|
|
|
|
environment:
|
|
|
|
|
ZOOKEEPER_CLIENT_PORT: 2181
|
|
|
|
|
ZOOKEEPER_TICK_TIME: 2000
|
|
|
|
|
ports:
|
|
|
|
|
- ${ZOOKEEPER_LOCAL_PORT}:2181
|
|
|
|
|
# volumes:
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/zookeeper:/var/lib/zookeeper
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
# See Also: https://hub.docker.com/r/confluentinc/cp-kafka
|
|
|
|
|
kafka1:
|
|
|
|
|
image: confluentinc/cp-kafka:latest
|
|
|
|
|
container_name: ${KAFKA_CONTAINER_01_NAME}
|
|
|
|
|
hostname: kafka1
|
|
|
|
|
depends_on:
|
|
|
|
|
- zookeeper
|
|
|
|
|
ports:
|
|
|
|
|
- ${KAFKA_01_LOCAL_PORT}:29092
|
|
|
|
|
# volumes:
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_01_NAME}/lib:/var/lib/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_01_NAME}/logs:/var/logs/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_01_NAME}/conf:/etc/kafka
|
|
|
|
|
environment:
|
|
|
|
|
KAFKA_BROKER_ID: 1
|
|
|
|
|
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
|
|
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka1:9092,PLAINTEXT_HOST://localhost:${KAFKA_01_LOCAL_PORT}
|
|
|
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
|
|
|
|
|
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
|
|
|
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
# See Also: https://hub.docker.com/r/confluentinc/cp-kafka
|
|
|
|
|
kafka2:
|
|
|
|
|
image: confluentinc/cp-kafka:latest
|
|
|
|
|
container_name: ${KAFKA_CONTAINER_02_NAME}
|
|
|
|
|
hostname: kafka2
|
|
|
|
|
depends_on:
|
|
|
|
|
- zookeeper
|
|
|
|
|
ports:
|
|
|
|
|
- ${KAFKA_02_LOCAL_PORT}:39092
|
|
|
|
|
# volumes:
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_02_NAME}/lib:/var/lib/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_02_NAME}/logs:/var/logs/kafka
|
|
|
|
|
# - ${DOCKER_DATA_PATH}/kafka/${KAFKA_CONTAINER_02_NAME}/conf:/etc/kafka
|
|
|
|
|
environment:
|
|
|
|
|
KAFKA_BROKER_ID: 2
|
|
|
|
|
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
|
|
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka2:9092,PLAINTEXT_HOST://localhost:${KAFKA_02_LOCAL_PORT}
|
|
|
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
|
|
|
|
|
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
|
|
|
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
gitlink-reader:
|
|
|
|
|
container_name: ${GNS_READER_CONTAINER_NAME}
|
|
|
|
|
hostname: gitlink_reader
|
|
|
|
|
image: gitlink/gns-reader:${GITLINK_NOTIFICATION_SYS_VERSION}
|
|
|
|
|
build:
|
|
|
|
|
context: ../
|
|
|
|
|
dockerfile: middleware/reader.Dockerfile
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/gitlink/:/data/logs/
|
|
|
|
|
depends_on:
|
|
|
|
|
- kafka1
|
|
|
|
|
- kafka2
|
|
|
|
|
- redis
|
|
|
|
|
- mysql
|
|
|
|
|
ports:
|
|
|
|
|
- ${GNS_READER_LOCAL_PORT}:8081
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
gitlink-writer:
|
|
|
|
|
container_name: ${GNS_WRITER_CONTAINER_NAME}
|
|
|
|
|
hostname: gitlink_writer
|
|
|
|
|
image: gitlink/gns-writer:${GITLINK_NOTIFICATION_SYS_VERSION}
|
|
|
|
|
build:
|
|
|
|
|
context: ../
|
|
|
|
|
dockerfile: middleware/writer.Dockerfile
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/gitlink/:/data/logs/
|
|
|
|
|
depends_on:
|
|
|
|
|
- kafka1
|
|
|
|
|
- kafka2
|
|
|
|
|
- redis
|
|
|
|
|
- mysql
|
|
|
|
|
ports:
|
|
|
|
|
- ${GNS_WRITER_LOCAL_PORT}:8082
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
gitlink-executor:
|
|
|
|
|
container_name: ${GNS_EXECUTOR_CONTAINER_NAME}
|
|
|
|
|
hostname: gitlink_executor
|
|
|
|
|
image: gitlink/gns-executor:${GITLINK_NOTIFICATION_SYS_VERSION}
|
|
|
|
|
build:
|
|
|
|
|
context: ../
|
|
|
|
|
dockerfile: middleware/executor.Dockerfile
|
|
|
|
|
networks:
|
|
|
|
|
- gitlink_network
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_DATA_PATH}/gitlink/:/data/logs/
|
|
|
|
|
environment:
|
|
|
|
|
- TZ=Asia/Shanghai
|
|
|
|
|
depends_on:
|
|
|
|
|
- kafka1
|
|
|
|
|
- kafka2
|
|
|
|
|
- redis
|
|
|
|
|
- mysql
|
|
|
|
|
ports:
|
|
|
|
|
- ${GNS_EXECUTOR_LOCAL_PORT}:8083
|
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
gitlink_network:
|
|
|
|
|
driver: bridge
|
|
|
|
|
name: gitlink_network
|
|
|
|
|
driver_opts:
|
|
|
|
|
com.docker.network.enable_ipv6: "true"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|