更多docker基本命令请自行查询。

1.首先拉取合适版本的docker镜像

  docker pull redis:5

2.如果不需要更改什么配置或者仅仅测试用可以直接启动镜像运行容器,这里要说明的是根据配置文件启动并且将持久化文件挂载在宿主机。首先从官网下载一份版本相同的配置文件,更改以下配置:

  daemonize 设置为 no,这个很重要,如果不是no docker会一直启动失败,原因是docker本身需要后台运行,而这个配置选项也是以守护进程启动,两者会冲突

  上面只是针对docker部署redis必须更改的配置,还有一些redis本身的配置,比如端口号,允许访问ip等请看另一篇文章 https://www.cnblogs.com/Qsunshine/p/10401391.html

3.现在可以用以下命令启动:

docker run -d -p 6379:6379 -v /myredis/redis.conf:/usr/local/etc/redis/redis.conf -v /myredis/data:/data/:rw --name myredis redis redis-server /usr/local/etc/redis/redis.conf

  docker  run    docker启动命令

  -d   后台启动

  -p 6379:6379   第一个端口是宿主机端口,第二个端口是容器端口,表示将容器的6379端口映射到宿主机的6379端口上,这样可以通过访问宿主机6379来访问redis

  -v /myredis/redis.conf:/usr/local/etc/redis/redis.conf   挂在配置文件,/myredis/redis.con是自己配置文件的地址,/usr/local/etc/redis/redis.conf是容器中的配置文件地址,容器启动成功后会自己创建,之后可以通过更改宿主机的配置文件来达到更改容器实际配置文件的目的。

  -v /myredis/data:/data/:rw   挂载持久化文件,/myredis/data是宿主机中持久化文件的位置,/data/是容器中持久化文件的位置(需要和配置文件中dir属性值一样),“:rw”这个是给容器中/data目录添加读写权限

  --name myredis redis   运行镜像redis,并且启动后容器名命名为myredis

  redis-server /usr/local/etc/redis/redis.conf   用配置文件方式启动redis

docker根据配置文件启动redis的更多相关文章

  1. Docker 安装 redis 并实现配置文件启动,数据文件本地持久化

    1,笔者使用的是 Linux 的 Centos7 版本  2,安装 Docker,不会安装可以移步 Docker 在 Linux 平台的安装 以及一些常见命令 3,下载 docker 镜像 3.1,首 ...

  2. docker使用redis.conf配置文件方式启动redis无反应无日志

    如题,场景重现:因为配置多了,不想通过参数来启动docker容器中的redis,特意上github找了对应版本的redis.conf,修改了相关配置,只让本机使用: 上传到/mydata/redis/ ...

  3. docker 安装部署 redis(配置文件启动)

    获取 redis 镜像 docker pull redis:4.0.12 docker images 创建容器 创建宿主机 redis 容器的数据和配置文件目录 # 创建宿主机 redis 容器的数据 ...

  4. docker 启动redis容器

    dockerfile FROM registry.cn-hangzhou.aliyuncs.com/xxxholic/redis COPY redis.conf EXPOSE redis.conf p ...

  5. Docker---(8)Docker启动Redis后访问不了

    原文:Docker---(8)Docker启动Redis后访问不了 版权声明:欢迎转载,请标明出处,如有问题,欢迎指正!谢谢!微信:w1186355422 https://blog.csdn.net/ ...

  6. docker启动redis报错 oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo

    docker启动redis报错 1:C 17 Jun 08:18:04.613 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo1:C 17 Jun 08 ...

  7. 【docker】docker部署spring boot服务 选择配置文件启动

    默认启动命令: docker run --name swapping -itd --net=host -v /etc/localtime:/etc/localtime:ro -v /etc/timez ...

  8. docker启动redis端口映射错误问题解决

    今天使用docker安装redis,使用的时候出现了一些问题.第一次安装好后,在虚拟机后台启动了redis,然后在连接虚拟机的redis的时候怎么也连不上.出现这种情况我第一反应是防火墙没有开启所以我 ...

  9. Docker实战(1):通过配置文件启动MongoDB

    系统环境:Centos7 MongoDB 4.0.0 创建文件 注意:创建文件全是为了Docker run做准备,文件所对应的路径需与下一步的映射路径所对应,路径可自我更改. mkdir mongo ...

随机推荐

  1. PHP中反射的简单实用(动态代理)

    <?php class mysql{ function connect($db){ echo "连接mysql数据库${db[0]} \r\n"; } } class ora ...

  2. The operation could not be performed because OLE DB provider "SQLNCLI11" for linked server "SDSSDFCC" was unable to begin a distributed transaction.

    Question: SQL SERVER 通过Linkserver连接A和B 2台,A对B执行单条的增删改查没有异常(没有配置DTC) 但是开启事务后就会出现报错 Solution: 在A和B上配置D ...

  3. vue 中 vue-router、transition、keep-alive 怎么结合使用?

    <transition :name="name" mode="out-in" name="fade"> <keep-ali ...

  4. 两篇文章带你走入.NET Core 世界:Kestrel+Nginx+Supervisor 部署上云服务器(二)

    背景: 上一篇:两篇文章带你走入.NET Core 世界:CentOS+Kestrel+Ngnix 虚拟机先走一遍(一) 已经交待了背景,这篇就省下背景了,这是第二篇文章了,看完就木有下篇了. 直接进 ...

  5. window下编译jcef

    自行编译jcef过程中遇到了一些问题,现在记录如下. 参考的主要文章是jcef的官方介绍: https://bitbucket.org/chromiumembedded/java-cef/wiki/B ...

  6. 为什么要重写 hashcode 和 equals 方法?

    引言 以前面试的时候被面试官问到过这样一个问题: 你有没有重写过 hashCode 方法? 心里想着我没事重写哪玩意干啥,能不写就不写.嘴上当然没敢这么说,只能略表遗憾的说抱歉,我没写过. 撇了面试官 ...

  7. JavaSSM框架报HTTP Status 500 - Servlet.init() for servlet springMvc threw exception错误

    如下,刚搭建的项目报这样的错,刚学框架的我一脸懵逼...网上很多说是jdk或者springmvc的的jar的版本问题,但是我其他项目都可以啊,所以排除了这个问题. 经过几个小时的排查,发现了我的问题所 ...

  8. Centos扩容swap分区

    今天在vps上装了个msf,装了一半竟然被kill掉了,因为RAM只有512M,swap也只有130M.遂到网上寻求解决办法,下面是我的笔记: 查看当前swap大小: free -h 修改swap大小 ...

  9. offset系列,client系列,scroll系列回顾

    一 scroll系列属性      ——滚动

  10. JDBC事务控制

    概念 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit).事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并 ...