140 lines
3.7 KiB
YAML
140 lines
3.7 KiB
YAML
|
|
x-logging: &default-logging
|
||
|
|
driver: "json-file"
|
||
|
|
options:
|
||
|
|
max-size: "10m"
|
||
|
|
max-file: "10"
|
||
|
|
|
||
|
|
networks:
|
||
|
|
playedu:
|
||
|
|
driver: bridge
|
||
|
|
ipam:
|
||
|
|
driver: default
|
||
|
|
config:
|
||
|
|
- subnet: 172.10.10.0/24
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
mysql-data:
|
||
|
|
redis-data:
|
||
|
|
minio-data:
|
||
|
|
kafka-data:
|
||
|
|
|
||
|
|
services:
|
||
|
|
redis:
|
||
|
|
image: registry.cn-hangzhou.aliyuncs.com/hzbs/redis:7.0.12
|
||
|
|
restart: always
|
||
|
|
volumes:
|
||
|
|
- redis-data:/data
|
||
|
|
ports:
|
||
|
|
- "${PORT_EXTERNAL_REDIS}:6379"
|
||
|
|
networks:
|
||
|
|
- playedu
|
||
|
|
logging: *default-logging
|
||
|
|
|
||
|
|
mysql:
|
||
|
|
image: registry.cn-hangzhou.aliyuncs.com/hzbs/mysql:8.1
|
||
|
|
restart: always
|
||
|
|
environment:
|
||
|
|
- MYSQL_DATABASE=${DB_NAME}
|
||
|
|
- MYSQL_ROOT_PASSWORD=${DB_PASS}
|
||
|
|
volumes:
|
||
|
|
- mysql-data:/var/lib/mysql
|
||
|
|
ports:
|
||
|
|
- "${PORT_EXTERNAL_MYSQL}:3306"
|
||
|
|
networks:
|
||
|
|
- playedu
|
||
|
|
logging: *default-logging
|
||
|
|
|
||
|
|
minio:
|
||
|
|
image: registry.cn-hangzhou.aliyuncs.com/hzbs/bitnami-minio:2024.6.6
|
||
|
|
restart: always
|
||
|
|
environment:
|
||
|
|
- MINIO_ROOT_USER=${S3_ACCESS_KEY_ID}
|
||
|
|
- MINIO_ROOT_PASSWORD=${S3_SECRET_ACCESS_KEY}
|
||
|
|
- MINIO_DEFAULT_BUCKETS=${S3_BUCKET}
|
||
|
|
volumes:
|
||
|
|
- minio-data:/bitnami/minio/data
|
||
|
|
networks:
|
||
|
|
- playedu
|
||
|
|
logging: *default-logging
|
||
|
|
|
||
|
|
kafka:
|
||
|
|
image: registry.cn-hangzhou.aliyuncs.com/hzbs/bitnami-kafka:3.7.0
|
||
|
|
environment:
|
||
|
|
- KAFKA_CFG_NODE_ID=0
|
||
|
|
- KAFKA_CFG_PROCESS_ROLES=controller,broker
|
||
|
|
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
|
||
|
|
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
|
||
|
|
- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka:9093
|
||
|
|
- KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
|
||
|
|
- KAFKA_KRAFT_CLUSTER_ID=playedu-kafka-cluster
|
||
|
|
restart: always
|
||
|
|
volumes:
|
||
|
|
- kafka-data:/bitnami/kafka
|
||
|
|
networks:
|
||
|
|
- playedu
|
||
|
|
logging: *default-logging
|
||
|
|
|
||
|
|
playedu:
|
||
|
|
build:
|
||
|
|
context: .
|
||
|
|
dockerfile: Dockerfile-api
|
||
|
|
args:
|
||
|
|
- ENABLED_MINIO=${ENABLED_MINIO}
|
||
|
|
- ENABLED_SSL=${BUILD_ARGS_ENABLED_SSL}
|
||
|
|
- SSL_WILDCARD=${BUILD_ARGS_SSL_WILDCARD}
|
||
|
|
- DOMAIN_API=${BUILD_ARGS_DOMAIN_API}
|
||
|
|
- DOMAIN_PC=${BUILD_ARGS_DOMAIN_PC}
|
||
|
|
- DOMAIN_H5=${BUILD_ARGS_DOMAIN_H5}
|
||
|
|
- DOMAIN_ADMIN=${BUILD_ARGS_DOMAIN_ADMIN}
|
||
|
|
- DOMAIN_MINIO=${BUILD_ARGS_DOMAIN_MINIO}
|
||
|
|
restart: always
|
||
|
|
environment:
|
||
|
|
- DB_HOST=${DB_HOST}
|
||
|
|
- DB_PORT=${DB_PORT}
|
||
|
|
- DB_USER=${DB_USER}
|
||
|
|
- DB_NAME=${DB_NAME}
|
||
|
|
- DB_PASS=${DB_PASS}
|
||
|
|
- REDIS_HOST=${REDIS_HOST}
|
||
|
|
- REDIS_PASS=${REDIS_PASS}
|
||
|
|
- REDIS_PORT=${REDIS_PORT}
|
||
|
|
- REDIS_DB=${REDIS_DB}
|
||
|
|
- SA_TOKEN_IS_CONCURRENT=${SA_TOKEN_IS_CONCURRENT}
|
||
|
|
- SA_TOKEN_JWT_SECRET_KEY=${PLAYEDU_JWT_KEY}
|
||
|
|
- KAFKA_BOOTSTRAP_SERVERS=${KAFKA_BOOTSTRAP_SERVERS}
|
||
|
|
- PROTECTOR_LICENSE=${PROTECTOR_LICENSE}
|
||
|
|
volumes:
|
||
|
|
- "./data:/playedu-data"
|
||
|
|
ports:
|
||
|
|
- "80:80"
|
||
|
|
- "443:443"
|
||
|
|
- "${PORT_EXTERNAL_API}:9898"
|
||
|
|
- "${PORT_EXTERNAL_PC}:9800"
|
||
|
|
- "${PORT_EXTERNAL_H5}:9801"
|
||
|
|
- "${PORT_EXTERNAL_ADMIN}:9900"
|
||
|
|
- "${PORT_EXTERNAL_MINIO}:9000"
|
||
|
|
networks:
|
||
|
|
- playedu
|
||
|
|
logging: *default-logging
|
||
|
|
|
||
|
|
document:
|
||
|
|
build:
|
||
|
|
context: .
|
||
|
|
dockerfile: Dockerfile-document
|
||
|
|
restart: always
|
||
|
|
environment:
|
||
|
|
- DB_HOST=${DB_HOST}
|
||
|
|
- DB_PORT=${DB_PORT}
|
||
|
|
- DB_USER=${DB_USER}
|
||
|
|
- DB_NAME=${DB_NAME}
|
||
|
|
- DB_PASS=${DB_PASS}
|
||
|
|
- REDIS_HOST=${REDIS_HOST}
|
||
|
|
- REDIS_PASS=${REDIS_PASS}
|
||
|
|
- REDIS_PORT=${REDIS_PORT}
|
||
|
|
- REDIS_DB=${REDIS_DB}
|
||
|
|
- SA_TOKEN_IS_CONCURRENT=${SA_TOKEN_IS_CONCURRENT}
|
||
|
|
- SA_TOKEN_JWT_SECRET_KEY=${PLAYEDU_JWT_KEY}
|
||
|
|
- KAFKA_BOOTSTRAP_SERVERS=${KAFKA_BOOTSTRAP_SERVERS}
|
||
|
|
- PROTECTOR_LICENSE=${PROTECTOR_LICENSE}
|
||
|
|
networks:
|
||
|
|
- playedu
|
||
|
|
logging: *default-logging
|