docker redis 指定配置文件启动失败
2020-11-18 本文已影响0人
愤愤的有痣青年
使用docker创建redis镜像,使用外部redis.conf配置文件时启动,启动命令如下:
docker run -d -v /docker_redis.conf:/etc/redis/redis.conf -p 0.0.0.0:6379:6379 --name my_redis redis:latest redis-server /etc/redis/redis.conf
启动时输出:
1:C 18 Nov 2020 07:20:15.686 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 18 Nov 2020 07:20:15.686 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 18 Nov 2020 07:20:15.686 # Configuration loaded
看起来无报错信息,但使用docker ps -a
查看容器时,却发现容器启动失败.
经过各种排查,最后发现是在redis.conf
配置文件中daemonize
参数设置的yes
,这使得redis是以后台启动的方式运行的,由于docker容器在启动时,需要任务在前台运行,否则会启动后立即退出,因此导致redis容器启动后立即退出问题.
解决方案,将redis.conf
中的daemonize
字段改为no
即可