Docker 安装Redis 无法使用配置文件设置密码问题及解决方法

 更新时间:2023年08月25日 08:31:01   作者:Joey_zy0210  
最近开发需要使用各种组件,如果都到开发机上安装,会占用电脑资源较多,所以使用docker容器来安装这些组件,这篇文章主要介绍了Docker安装Redis无法使用配置文件设置密码问题,需要的朋友可以参考下

背景

  最近开发需要使用各种组件,如果都到开发机上安装,会占用电脑资源较多。所以使用docker容器来安装这些组件。例如 redis 、mongodb、mysql、rabitmq、elasticsearch 等等。

遇到的问题

  用edis官方镜像启动容器后,发现没有加载配置文件。

解决方案

  1.redis镜像拉下来后,通过docker run 命令创建并启动容器。不能使用docker desktop 工具运行容器,那个工具貌似只能设置端口及容器名字,没找到 挂载配置文件启动redis的设置。

  2.通过docker desktop 或者 docker 命令  docker pull redis:latest 最新的redis 镜像。

  3. 通过 下面的命令 创建并运行容器

  docker run -p 6379:6379 --name myredis -d redis redis-server /etc/redis/redis.conf --appendonly yes

  -p  映射redis 使用6379端口

  --name 指定容器名字 为 myredis

  -d 指定使用的镜像名字 ,是用redis 镜像创建容器,后面紧接的参数 redis-server 是容器启动后,执行redis-server 命令 并挂载 etc/redis/redis.conf 文件 。

  -- appendonly yes 表示启动redis时打开redis 持久化配置。

  这让创建容器,容器会启动失败。

  通过docker ps 查看当前的容器,找到刚创建的容器,通过 docker logs 容器id  查看容器的启动日志,或者通过docker desktop 工具点击对应的容器,然后点击Logs选项卡,查看日志。

  日志里会提示 /etc/redis/redis.conf  文件不存在。

  此时我们可以通过 docker exec -it 【容器id】/bin/bash 命令进入容器,容器内也是一个liunx 系统,可以通过liunx命令创建对应的目录和配置文件,并通过vi命令编辑文件,设置密码。

  或者通过Docker DeskTop 工具 进入容器后点击Files 就可以像在windows 下一样,以文件夹的方式浏览容器内的文件,

  可以找到对应的目录,将本地的文件上传上去(注意只能上传文件夹,可以到本地建个redis 目录,里面包含redis.conf 文件配置,然后将目录上传到对应的文件夹)。见图:  

   配置里编辑好要设置的密码。文件上传到容器内后,点击右上角的restart 重启容器,容器内的redis就会自动加载配置文件。里面就指定了密码。注意配置里的bind 127.0.0.1 配置需要注释掉,

  不然外部无法连接容器内的redis。

  重启容器后,可以通过 进入容器内的redis 

  docker exec -it [容器id]  redis-cli   

  或者 

  docker exec -it [容器id] /bin/bash

  redis-cli -h 127.0.0.1 -p 6379 -a 123456

  进入容器后,通过 config get requirepass 命令获取当前配置的账号密码,如果指定密码登录了,会返回当前的密码。

  如果通过第一个命令直接进入,会提提示需要验证密码,此时可以通过auth 【密码】 命令验证redis的密码。

  也可以重新修改密码 config set requirepass [新密码] 修改后保存回 配置文件  config rewrite
  到这里 docker redis 通过配置启动,修改密码等操作已完成。

  之前在网上找了很多资料,大部分都是通过 docker run 命令 加  -v 参数 挂载 主机 目录及配置文件,这种方式我没成功~不知道问题出在哪里,最后启动的redis 都没有应用上配置文件,

  且查看容器内映射的配置文件,redis.conf 它显示的是目录,不是文件...  

  如果通过Docker Desktop 工具的镜像管理直接启动容器,不能指定的容器内redis启动时挂载 redis.conf 配置。Environment variables 参数设置也不起作用。 docker desktop 是方便,但是需要额外设置一些参数,还是需要通过 

  docker run 命令来创建和启动容器。

到此这篇关于Docker 安装Redis 无法使用配置文件设置密码问题的文章就介绍到这了,更多相关Docker 安装Redis内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Dockerfile中CMD和ENTRYPOINT命令详解

    Dockerfile中CMD和ENTRYPOINT命令详解

    Dockerfile中的ENTRYPOINT指令和CMD指令都可以设置容器启动时要执行的命令,但用途是有略微不同的。下面这篇文章主要给大家介绍了关于Dockerfile中CMD和ENTRYPOINT命令的相关资料,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-03-03
  • Docker容器日志查看与清理的方法(亲测有效)

    Docker容器日志查看与清理的方法(亲测有效)

    这篇文章主要介绍了Docker容器日志查看与清理的方法(亲测有效),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • docker安装redis设置密码并连接的操作

    docker安装redis设置密码并连接的操作

    这篇文章主要介绍了docker安装redis设置密码并连接的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 一文详解如何修改Docker的默认存储路径

    一文详解如何修改Docker的默认存储路径

    这篇文章主要介绍了关于如何修改Docker的默认存储路径的相关资料,默认安装的情况下,会使用 /var/lib/docker/ 目录作为存储目录,用以存放拉取的镜像和创建的容器等,这个路径是系统存储目录,一般空间会比较小,需要的朋友可以参考下
    2023-08-08
  • docker.service启动报错的一次排查详解

    docker.service启动报错的一次排查详解

    这篇文章主要介绍了docker.service启动报错的一次排查详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 详解如何干净的卸载docker的方法

    详解如何干净的卸载docker的方法

    这篇文章主要介绍了详解如何干净的卸载docker的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • docker安装单点elasticsearch过程

    docker安装单点elasticsearch过程

    这篇文章主要介绍了docker安装单点elasticsearch过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Linux环境下安装docker环境(亲测无坑)

    Linux环境下安装docker环境(亲测无坑)

    大家好,本篇文章主要讲的是Linux环境下安装docker环境(亲测无坑),感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2021-12-12
  • 关于docker可视化管理工具-DockerUI的安装

    关于docker可视化管理工具-DockerUI的安装

    这篇文章主要介绍了关于docker可视化管理工具-DockerUI的安装,DockerUI是一款开源强大的轻量级Docker管理工具,还不了解这款工具的朋友一起来看看吧
    2023-03-03
  • 使用Dockerfile构建java web环境

    使用Dockerfile构建java web环境

    用dockerfile构建一个Java的web环境,主要分为2步,第一步是在镜像中安装jdk并配置环境变量,第二步是安装tomcat,下面分步骤给大家详细介绍,一起看看吧
    2016-12-12

最新评论