mirror of
https://github.com/thousmile/molly-multi-tenant.git
synced 2025-12-30 04:32:26 +00:00
121 lines
2.9 KiB
YAML
121 lines
2.9 KiB
YAML
version: '3'
|
|
|
|
networks:
|
|
app-net1:
|
|
ipam:
|
|
config:
|
|
- subnet: 172.19.0.0/16
|
|
gateway: 172.19.0.1
|
|
|
|
services:
|
|
|
|
mysql8:
|
|
image: mysql:8.3.0
|
|
container_name: mysql8
|
|
# 映射端口
|
|
ports:
|
|
- "3306:3306"
|
|
# 容器环境变量
|
|
environment:
|
|
# root 密码
|
|
- MYSQL_ROOT_PASSWORD=mht123456
|
|
# 初始化数据库(后续的初始化sql会在这个库执行)
|
|
- MYSQL_DATABASE=molly_master
|
|
# 初始化用户(不能是 root 会报错, 后续需要给新用户赋予权限)
|
|
- MYSQL_USER=test123
|
|
- MYSQL_PASSWORD=mht123456
|
|
volumes:
|
|
- /data/mysql8/data/:/var/lib/mysql/
|
|
- /data/mysql8/conf/:/etc/mysql/conf.d/
|
|
# 初始化 sql语句 目录挂载,
|
|
# - /data/mysql8/init/:/docker-entrypoint-initdb.d/
|
|
- /etc/localtime:/etc/localtime:ro
|
|
command:
|
|
--character-set-server=utf8mb4
|
|
--collation-server=utf8mb4_general_ci
|
|
--explicit_defaults_for_timestamp=true
|
|
--lower_case_table_names=1
|
|
--log-bin=mysql-bin
|
|
--server_id=1
|
|
restart: always
|
|
networks:
|
|
app-net1:
|
|
ipv4_address: 172.19.0.11
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 2g
|
|
|
|
|
|
redis7:
|
|
image: redis:7.2.4
|
|
container_name: redis7
|
|
ports:
|
|
- "6379:6379"
|
|
environment:
|
|
- TZ="Asia/Shanghai"
|
|
volumes:
|
|
- /data/redis7/data:/data
|
|
- /data/redis7/conf/redis.conf:/etc/redis/redis.conf
|
|
- /etc/localtime:/etc/localtime:ro
|
|
command: redis-server --requirepass redis123456 --appendonly yes
|
|
privileged: true
|
|
restart: always
|
|
networks:
|
|
app-net1:
|
|
ipv4_address: 172.19.0.21
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 1g
|
|
|
|
|
|
nginx:
|
|
image: nginx:1.25.4
|
|
container_name: nginx
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
environment:
|
|
- TZ="Asia/Shanghai"
|
|
volumes:
|
|
- /data/nginx/cert:/cert
|
|
- /data/nginx/html:/html
|
|
- /data/nginx/logs:/var/log/nginx
|
|
- /data/nginx/nginx.conf:/etc/nginx/nginx.conf
|
|
- /etc/localtime:/etc/localtime:ro
|
|
restart: always
|
|
privileged: true
|
|
networks:
|
|
app-net1:
|
|
ipv4_address: 172.19.0.31
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 512m
|
|
|
|
|
|
molly:
|
|
image: eclipse-temurin:21-jre-jammy
|
|
container_name: molly
|
|
ports:
|
|
- "18891:18891"
|
|
environment:
|
|
- SPRING_PROFILES_ACTIVE=pro
|
|
volumes:
|
|
- /data/molly/logs:/logs/molly
|
|
- /data/molly/molly-pro.jar:/app.jar
|
|
- /data/molly/application-pro.yml:/config/application-pro.yml
|
|
- /etc/localtime:/etc/localtime:ro
|
|
command: java -server -Xms1g -Xmx1g -XX:+DisableExplicitGC -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -Duser.timezone=Asia/Shanghai -Djava.security.egd=file:/dev/./urandom -jar /app.jar
|
|
privileged: true
|
|
restart: always
|
|
networks:
|
|
app-net1:
|
|
ipv4_address: 172.19.0.41
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 2g
|
|
|