我目前推荐docker-compose来构建中间件服务
redis和mysql
version: '3.8'
# 定义网络
networks:
webchat-network:
driver: bridge
ipam:
config:
- subnet: 172.28.0.0/16
# 定义数据卷
volumes:
mysql_data:
mysql_config:
redis_data:
minio_data:
elasticsearch_data:
mongodb_data:
milvus_data:
n8n_data:
prometheus_data:
grafana_data:
rocketmq_data:
services:
# ===================== MySQL 8.0 =====================
mysql80:
image: mysql:8.0 # 固定8.0版本
container_name: mysql80-webchat
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-MysqlRoot@123456}
MYSQL_DATABASE: nacos_config
MYSQL_USER: webchat
MYSQL_PASSWORD: ${MYSQL_APP_PASSWORD:-Webchat@123456}
TZ: Asia/Shanghai
MYSQL_INNODB_BUFFER_POOL_SIZE: 256M # 优化InnoDB缓冲池
volumes:
- mysql_data:/var/lib/mysql
networks:
- webchat-network
ports:
- "3308:3306"
restart: unless-stopped
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 30s
timeout: 10s
retries: 5
start_period: 60s
deploy:
resources:
limits:
memory: 1G
cpus: '1.0'
reservations:
memory: 512M
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --default-authentication-plugin=mysql_native_password
- --max_connections=1000
# ===================== Redis 6.0 =====================
redis-webchat:
container_name: redis-webchat
image: redis:6.2
restart: always
command: redis-server /etc/redis/redis.conf
volumes:
- redis_data:/data
- ./config/redis.conf:/etc/redis/redis.conf:ro
ports:
- "6380:6379"
networks:
- webchat-network
nacos的构建
我参考的www.cnblogs.com/yangyxd/p/1…
在构建nacos服务的时候,我是部署在linux上面的,要开通多个端口,8848, 9848,9849,我也不太明白,后边我看看源码
项目中的整合