重庆小潘seo博客

当前位置:首页 > 重庆网络营销 > 小潘杂谈 >

小潘杂谈

解决Redis容器使用redis.conf启动失败

时间:2020-09-22 04:40:07 作者:重庆seo小潘 来源:
了解redis.conf的配置文件打开redis.conf后会看到很多的无用信息 我们使用grep命令来简单的处理一个下,然后就可以看到redis.conf的所有配置信息,但是现在输入的命令是不可以编辑的 执行命令:cat redis.conf | grep -v # | grep -v ^$ 上边的这个虽然把red

了解redis.conf的配置文件打开redis.conf后会看到很多的无用信息

解决Redis容器使用redis.conf启动失败

我们使用grep命令来简单的处理一个下,然后就可以看到redis.conf的所有配置信息,但是现在输入的命令是不可以编辑的

执行命令:cat redis.conf | grep -v "#" | grep -v "^$"

解决Redis容器使用redis.conf启动失败

上边的这个虽然把redis.conf的所有配置信息弄出来了,但是不能修改,我们可以把这个内容输出到另外一个文件里边,这个时候就可以在redis下可以看到一个redis-test.conf的一个文件

执行命令:cat redis.conf | grep -v "#" | grep -v "^$" ->redis-test.conf

解决Redis容器使用redis.conf启动失败

这个时候就可以在redis-test.conf里边修改一些配置信息

解决Redis容器使用redis.conf启动失败

在这里我们先了解几个配置,后边的配置咔咔会在后续的文件依序写出

daemonize no :redis默认是不作为守护进程使用的,这也就是说为什么在你不修改配置文件时直接使用redis-server/redis/redis.conf启动redis会直接显示一个服务,你在这个终端就没有办法操作其他,只能新开一个终端来连接redis

requirepass foobared :redis默认是没有密码连接的,但是为了安全密码还是需要设置的

bind 127.0.0.1:这个配置项一般是直接注释掉的,这个配置开启后就只有本机可以连接redis

以上几个配置信息就是本文所需要知道的三个配置信息了解docker run命令参数信息docker run命令就是创建一个新的容器

以下是一个我创建容器使用的命令`docker run -itd --restart="always" --name redis -v /usr/local/docker/data:/data -v /usr/local/docker/redis.conf:/etc/redis.conf --net mynetwork -p 6380:6379 --ip 172.10.0.2 redis:4.0 redis-server /etc/redis.conf`

i : 打开STDIN,用于控制台交互

t :分配tty设备,该可以支持终端登录,默认为false

d:指定容器运行于前台还是后台,默认为false

v:给容器挂载存储卷,挂载到容器的某个目录

--net:容器使用自己自定义的网络

-p:是端口号

--restart:指定容器停止后的重启策略 no:容器退出时不重启on-failure:容器故障退出(返回值非零)时重启 always:容器退出时总是重启解决redis容器启动redis.conf时启动及失败当我们认识了redis.conf的几个参数和docker run的几个常用参数后,我们来进行解决这个使用redis.conf启动时直接就失败问题。

然后开始创建容器有一部分伙伴会发现有一个错误`WARNING: IPv4 forwarding is disabled. Networking will not work.`

解决Redis容器使用redis.conf启动失败

先来解决这个问题

执行命令`vim/usr/lib/sysctl.d/00-system.conf`

添加以下代码`net.ipv4.ip_forward=1`

重新启动network命令`systemctl restart network`

在来执行一下就没有问题了

解决Redis容器使用redis.conf启动失败

然后进入到容器就会发现我们的问题了,创建容器后直接就退出了

解决Redis容器使用redis.conf启动失败

这个时候是不是很是郁闷,怎么就直接退出了。这也就是为什么在上文中,我们提出了redis.conf和docker run命令参数的一些配置信息。

这个时候我们在回顾一下redis.conf里边是不是有一个`daemonize no`这个参数是是否以守护进程执行,在开发过程中我们都会把这个配置开启配置为yes。

然后在回顾一下docker run命令里边有一个参数 `-d`这个参数也是以守护进程执行。

这下应该就很清楚了,是redis.conf跟docker配置冲突了

打开配置文件把守护进程修改为no

解决Redis容器使用redis.conf启动失败

然后删除刚刚创建的redis容器,在此执行上边的命令,就可以看到容器现在已经创建成功,并且处于开启状态

解决Redis容器使用redis.conf启动失败这个时候在进入容器`docker exec -it redis /bin/bash`里边,就可以看到我们在连接redis-cli时需要输入密码,这也就是在redis.conf里边配置的。

解决Redis容器使用redis.conf启动失败

以上就是咔咔解决Redis容器使用redis.conf启动失败的解决方案以上就是解决Redis容器使用redis.conf启动失败的详细内容,更多请关注小潘博客其它相关文章!