docker安装redis并以配置文件启动(解决配置文件启动导致容器闪退问题)

前言

我之前自己在linux上安装redis,并以配置文件启动非常完美,没有一点问题,但是因为学过一段时间的docker,所以今天想用docker安装redis,并以配置文件启动(如果不用配置文件启动就直接使用docker run --name 自己起一个redis容器名 -d redis)。结果就疯狂出错,一个多小时,泪奔。但是我解决啦,来谈谈我的解决历程

第一步,docker下载redis 镜像

操作流程

  1. 进入docker hub,搜索redis,确定要下载的版本,这次版本我选择6.0.10(网上的兄弟选哪个版本都行啊)
  2. 在自己的服务器(虚拟机)上使用docker pull redis:6.0.10命令下载redis镜像,支持redis镜像下载完毕
    来个截图
    docker现在redis

第二步、启动redis

在docker hub中搜索的redis镜像页面里是由关于redis的启动的(关于docker启动镜像一定要看docker hub,介绍的非常详细,不要自己瞎搞,真的),看不懂中文的小伙伴,直接右键一键翻译,然后,往下滑,找到这一部分。

在我的截图中你看到这这么一行命令docker run -v /myredis/conf:/usr/local/etc/redis -d --name myredis -p 6379:6379 redis:6.0.10 redis-server /usr/local/etc/redis/redis.conf
,可能有的兄弟看到这行带这么多的参数的代码一下就蒙了,所以我带大家分析一波这行命令

  • docker run:第一次启动容器使用的命令
  • -v 宿主机目录:容器目录:是容器数据卷技术,不理解的话就是,我宿主机(服务器)/myredis/conf的这个目录与容器内/usr/local/etc/redis的目录实现文件共享,也就是服务器/myredis/conf下的所有文件容器中的/usr/local/etc/redis也有。所以兄弟们可以把redis.conf这个配置文件放在/myredis/conf目录下,这样等会儿容器的/usr/local/etc/redis/目录下就能有这个配置文件了,就可以通过这个配置文件启动了(目录的名字,大家想起啥起啥,不用跟我起的目录名一样)
  • -d:作用是让容器以后台方式运行
  • --name myredis:这个myredis就是我自己指定容器的名字,不指定docker默认给你分一个名字
  • redis:6.0.10:镜像的全程,这个地方你也可以替换成镜像ID
  • redis-server /usr/local/etc/redis/redis.conf:是根据配置文件redis.conf启动redis服务,这个配置文件的路径是跟你前面做的容器目录usr/local/etc/redis是一致的,不然铁定找不到这个配置文件 。然后就启动成功了。
  • -p 6379:6379:宿主机与容器映射6379端口,使得其他人可以从外界通过访问该容器

redis.conf从哪下载,好,这是一个好问题

我也没什么好办法,我的办法就是去redis官网下载一个redis.tar.gz,然后解压,拿到redis.conf然后放在我的/myredis/conf/的目录下面了,呜呜,如果有兄弟有好办法,在下面评论一下,谢谢。

第三步、docker启动redis出现闪退(有的兄弟错误的修改了redis.conf)

兄弟们在修改redis的时候跟定是根据自己的需要来进行一些配置的,比如说把bind注释掉,设置一下redis的连接密码等等,好,这些操作都不会导致闪退,导致闪退的唯一可能就是,你在redis.conf中把daemonize设置为了yes
redis.conf
有的兄弟不理解,不就是应该让redis设置为后台启动(或者说设置为守护进程)吗,但是这一次请不要这么做,给大家说说原因,首先我们的容器是:环境+软件,就是centos的环境加上redis软件,本来这个容器的环境启动时就一个redis进程在运行着,结果你把redis也设置为后台启动了,那centos环境没有一个正常的进程,都是守护进程,可不就关机了,也就意味着容器结束运行,所以你的容器启动就闪退
上个图
成功

四、其他

本篇博客中出现了一些名词像守护进程,还有什么容器数据卷技术不是一些新名词,操作系统会讲守护进程,自己私下了解来接,如果容器数据卷不知道的话,其实意味着你的docker还没入门-_-

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值