perf(redis): 优化 Redis 配置并添加资源限制
- 为 Redis 添加 ./data/redis:/data 持久化挂载 - 在 redis.conf 中设置 maxmemory 2gb 限制内存使用 - 禁用 RDB 快照,启用 appendfsync everysec 避免 OOM - 在 docker-compose.yml 中为 Redis 添加 mem_limit: 2g 和 memswap_limit: 2g - 为 MongoDB 添加 --wiredTigerCacheSizeGB 1.5 和 mem_limit: 2500m - 为 easyai-server 添加 mem_limit: 2200m 内存限制 - 更新 README.md 文档说明 Redis 资源护栏和迁移步骤
This commit is contained in:
@@ -67,6 +67,7 @@ services:
|
||||
- ./data/tmp:/tmp
|
||||
# - ./data/backend/pm2.config.js:/app/pm2.config.js
|
||||
restart: unless-stopped
|
||||
mem_limit: 2200m
|
||||
environment:
|
||||
# MongoDB配置,用户管理,不会配置的话保持默认即可
|
||||
- CONFIG_DB_MONGO_URI=mongodb://172.21.0.3:27017
|
||||
@@ -189,6 +190,8 @@ services:
|
||||
# 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果
|
||||
- MONGO_INITDB_ROOT_USERNAME=${MONGO_INITDB_ROOT_USERNAME}
|
||||
- MONGO_INITDB_ROOT_PASSWORD=${MONGO_INITDB_ROOT_PASSWORD}
|
||||
command: [ "mongod", "--wiredTigerCacheSizeGB", "1.5" ]
|
||||
mem_limit: 2500m
|
||||
volumes:
|
||||
# - /usr/local/mongo/data:/data/db
|
||||
- mongo_data:/data/db # 使用docker volume存储数据,提高性能,避免兼容性问题
|
||||
@@ -210,7 +213,10 @@ services:
|
||||
restart: always
|
||||
volumes:
|
||||
- ./redis.conf:/etc/redis/redis.conf # 挂载本地 redis.conf
|
||||
- ./data/redis:/data # 持久化 Redis AOF/RDB,避免落到容器写层
|
||||
command: [ "redis-server", "/etc/redis/redis.conf" ] # 让 Redis 读取配置文件
|
||||
mem_limit: 2g
|
||||
memswap_limit: 2g
|
||||
# ports:
|
||||
# - ${REDIS_PORT+${REDIS_PORT}:6379}
|
||||
# read_only: true
|
||||
|
||||
Reference in New Issue
Block a user