Redis容器长时间停止怎么回事?

我有一个 Redis 项目。当我停止或重新启动 docker compose 项目时,需要超过 10 秒才能停止 Redis Docker 容器(其他容器会在 1 或 2 秒内停止)。与此同时,Redis 容器start几乎是立即的,与其他容器相比需要很多时间才能stop。将

save

设置为空字符串不起作用。

save 60 1

save

它不会生效到时间停止。

与开发机器(Mac M1 Pro 和 Linux Ryzen 3600 PC)上的 node.js 和 Postgres 容器以及具有 2 个内核的“宠物生产”Intel Xeon 虚拟服务器相比,需要大约 10 倍

至少是增加停止容器或重新启动开发时间的方法吗?我经常使用

docker compose up -d --build

,重启Redis需要一些额外的时间

我不关心Redis数据。开发环境重启后删除即可。

redis.conf:

loglevel notice

# Modules
loadmodule /usr/lib/redis/modules/redisearch.so
loadmodule /usr/lib/redis/modules/rejson.so
loadmodule /usr/lib/redis/modules/redistimeseries.so

port 0
tls-port 6379

tls-cert-file /certs/server.crt
tls-key-file /certs/server.key
tls-ca-cert-file /certs/ca.crt
tls-dh-params-file /certs/redis.dh

maxmemory 256mb

save # was: `save: 60 1` with the same time to stop
docker
docker-compose
redis
2023-04-21 13:40:07
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
爱消失的柴郡猫

不处理 SIGTERM 信号的 bash 脚本有问题。

Dockerfile:

ENTRYPOINT ["/app/start-redis.sh"]

start-redis.sh

#!/usr/bin/env bash

redis-server /usr/local/etc/redis/redis.conf

start-redis.sh

#!/usr/bin/env bash

# [ Some work... ]

# Define cleanup function
stop_redis() {
    echo "==========   Stopping Redis server...   =========="
    redis-cli shutdown
    exit 0
}

# Trap SIGINT and SIGTERM signals and run cleanup function
trap stop_redis SIGINT
trap stop_redis SIGTERM

# Start redis
redis-server /usr/local/etc/redis/redis.conf &
wait %?redis-server
分享
微博
QQ
微信
回复
2023-04-21 15:19:28
相关问题
PopupDialog 不显示怎么回事
7410浏览 • 2回复 待解决
不能下载SDK怎么回事
1921浏览 • 1回复 待解决
ohpm安装失败怎么回事
2271浏览 • 1回复 待解决
IDE安装报错怎么回事啊?
3419浏览 • 1回复 待解决
centos 无法卸载 wine怎么回事
2466浏览 • 1回复 待解决
ohpm安装失败怎么回事啊?
4065浏览 • 1回复 待解决
设置代理不跳转怎么回事
5558浏览 • 1回复 待解决
DevEco Studio出错怎么回事啊?
3651浏览 • 1回复 待解决
Ubuntu下烧录8051怎么回事
2392浏览 • 1回复 待解决
PolarDB界面显示乱码怎么回事
2590浏览 • 1回复 待解决
hdc smode 无效怎么回事啊?
1043浏览 • 1回复 待解决
import 不提示问题怎么回事?
286浏览 • 1回复 待解决
模拟器启动出错怎么回事
2080浏览 • 1回复 待解决
SDK tools 没有内容是怎么回事
278浏览 • 1回复 待解决
真机无法调试怎么回事啊?
2584浏览 • 1回复 待解决
@ohos.inputMethod无法使用怎么回事
2230浏览 • 1回复 待解决
PolarDB修改表数据慢怎么回事
3152浏览 • 1回复 待解决
benchmarksql测试建表报错怎么回事
5166浏览 • 2回复 待解决
Nginx无法访问localhost怎么回事
2514浏览 • 1回复 待解决