docker-compose redis 一直启动失败

环境: centos 8.x

背景

使用docker-compose 来启动redis

docker-compose.yml 如下:

version: '3.3'
services:
  redis:
    image: redis:latest
    restart: always
    container_name: redis
    ports:
      - '6379:6379'
    volumes:
      - ./data:/redis/data
      - ./redis.conf:/redis/redis.conf   
      - ./logs:/redis/logs
    command: redis-server /redis/redis.conf

其中, redis.conf是从之前其他机器上拷过来的配置文件,其他机器redis是使用源码编译安装的。

启动:

docker-compose up -d

然后查看docker 进程

docker ps -a

显示redis 服务一直重启。
在这里插入图片描述
查看日志:

docker logs 8d9dffe4f3c7

日志为空。

原因

redis.conf 中设置了 daemonize yes
当daemonize 设置了yes,表示redis在后台运行,当执行docker-compose执行启动redis进程时,docker发现自己无事可做,容器自动结束,所以导致redis启动失败。

解决方案

将 redis.conf 中的 daemonize yes 注释/删掉。

然后重新启动。 docker-compose up -d

参考文章
https://blog.csdn.net/zt15732625878/article/details/122401087

你可能感兴趣的:(kubernetes,docker,redis,容器)