Docker:使用自定义redis.conf运行redis容器(7)
演示环境:win7+docker toolbox
1、自定义配置文件
首先在Windows环境下准备好配置文件redis

然后打开Quickstart终端输入命令:
cp -rf ~/Desktop/redis/ /usr/local/
这一步是把我们准备好的配置文件夹拷贝到 virtualbox的Linux里;如果是单个文件可以使用命令:cp -r 路径/文件 路径/文件;
6379的配置就是官方配置文件;6380和6381的配置文件是加了一行:slaveof
关于配置文件有几点注意的:
1、后台运行;使用no;
2、日志配置;使用空字符串;
2、运行redis容器:
docker run -v /usr/local/redis/redis-6379/redis.conf:/usr/local/etc/redis/redis.conf --name redis-6379 -p 6379:6379 -d hub.c.163.com/library/redis redis-server /usr/local/etc/redis/redis.conf
docker run -v /usr/local/redis/redis-6380/redis.conf:/usr/local/etc/redis/redis.conf --name redis-6380 -p 6380:6379 -d hub.c.163.com/library/redis redis-server /usr/local/etc/redis/redis.conf
docker run -v /usr/local/redis/redis-6381/redis.conf:/usr/local/etc/redis/redis.conf --name redis-6381 -p 6381:6379 -d hub.c.163.com/library/redis redis-server /usr/local/etc/redis/redis.conf
查了资料说:/usr/local/etc/redis/redis.conf 这个路径是redis官方镜像的Dockfile里面的,所以这里固定使用这个路径;另外一种方法是修改Dockerfile
3、Win7环境下的问题解决
win7环境下验证了一下,发现slaveof没有生效!网上也没找到资料,然后问了一下stackoverflow的大神们,他们无私的指导下
原因是环境问题:win7+Docker Quickstart Terminal;在终端里挂载我们自己的配置的时候,我们使用cp把配置拷贝到了,但是这个是无效的,必须直接挂载我们win7里的配置文件才可以生效!而上面2是正式的生产环境Linux的正确命令;win7终端的正确命令应该是:
docker run -v ~/Desktop/redis/redis-6381/redis.conf:/usr/local/etc/redis/redis.conf --name redis-6381 -p 6381:6379 -d hub.c.163.com/library/redis redis-server /usr/local/etc/redis/redis.conf
其他
1、查看日志
docker logs --tail=10 redis-6380
docker logs -f -t --since="2017-05-31" --tail=10 name
--since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。
-f : 查看实时日志
-t : 查看日志产生的日期
-tail=10 : 查看最后的10条日志。
name : 容器名称
2、直接命令
docker run -v /usr/local/redis/redis-6381/redis.conf:/usr/local/etc/redis/redis.conf --name redis-6381 -p 6381:6379 -d hub.c.163.com/library/redis redis-server /usr/local/etc/redis/redis.conf slaveof 172.17.0.2 6379
文档:
https://hub.docker.com/_/redis/
Docker:使用自定义redis.conf运行redis容器(7)的更多相关文章
- 4、解析配置文件 redis.conf、Redis持久化RDB、Redis的主从复制
1.Units单位 配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit 对大小写不敏感 2.INCLUDES包含 和我们的Struts2配置文件类似,可以通过includes包 ...
- Docker:redis容器使用redis.conf启动失败,不报错
查看redis.conf配置信息 daemonize no :redis默认是不作为守护进程使用的,这也就是说为什么在你不修改配置文件时直接使用redis-server /redis/redis.co ...
- Docker 安装并运行 Redis
说明 在Windows下运行Redis主要有以下几种方式: 使用微软官方构建的Windows版Redis,最新版本是3.0.504,发布于2016-07-01.https://github.com/m ...
- docker学习-lnmp+redis之搭建redis容器服务
1. 目录映射:/lnmp/data/redis:/data/lnmp/conf/redis/redis.conf:/etc/redis/redis.conf/lnmp/logs/redis:/var ...
- docker使用redis.conf配置文件方式启动redis无反应无日志
如题,场景重现:因为配置多了,不想通过参数来启动docker容器中的redis,特意上github找了对应版本的redis.conf,修改了相关配置,只让本机使用: 上传到/mydata/redis/ ...
- 手写redis的docker文件,通过docker-compose配置redis
在前面一遍随笔,配置的是mysql主从的docker-compose配置.今天我们来学习配置编排容器redis. 准备环境: docker 18.06.1-ce docker-compose 1.23 ...
- docker 构建带健康检查的redis镜像
=============================================== 2018/11/5_第1次修改 ccb_warlock == ...
- windows Docker Desktop 搭建mysql,mssql和redis服务
其实网上关于docker上搭建mysql的文章已经很多了,只是今晚自己搭建的时候遇到一些问题,记录一下 1.首先是pull image , docker pull mysql 2.启动服务 docke ...
- 【docker】【redis】1.docker安装redis【单点redis服务】
1.首先确定 需要在docker上拉取redis的哪个版本的镜像 [由于使用了aliyun的源,并且加速器也是用的阿里云的加速器,所以直接在阿里云开发者平台上找redis的镜像有哪些版本是再好不过了, ...
随机推荐
- 如何知道局域网内哪些ip被占用
诶,有时候真是略捉急,开始的时候估摸了一个网段,试了3个都没有通,觉得这个一个个试验的方法简直捉急到家了.下面就为大家分享3种简单地如何查看ip地址是否被占用的方法. 1.ping windows键+ ...
- 【Leetcode】收集
万事总要有个开头,来吧. 问题原题看情况,如果我能用中文准确地表述出来的话那就用中文说一下.也有可能完全不说… ■ twoSum 问题: 参数是一个数组nums和一个目标数target,寻找nums中 ...
- struts表单域模型注入
表单使用struts标签,表单中每一个字段都可以这样来赋值 类(action).成员变量 这个叫域模型注入 <s:form action="orders" method=&q ...
- 【QT】QPixmap在Label中自适应大小铺满
KeepAspectRatio:设置pixmap缩放的尺寸保持宽高比. setScaledContents:设置label的属性scaledContents,这个属性的作用是允许(禁止)label缩放 ...
- box-shadow比较美观的阴影
无奈每次调阴影都特别丑,这次我把它记下来,下次不调了 box-shadow: 0 5px 15px -5px rgba(0,0,0,.5);
- 安装redis时Newer version of jemalloc required错误解决
问题: [root@localhost redis-4.0.0]# make cd src && make allmake[1]: Entering directory `/root/ ...
- python基础类型—数字(Number)
Python3 支持 int.float.bool.complex(复数). 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long. 像大多数语言一样,数 ...
- 关于Redis 应用 的一些 感悟
最近在项目中 使用了 Redis技术
- Java 中的 IO 与 socket 编程 [ 复习 ]
一.Unix IO 与 IPC Unix IO:Open-Read or Write-Close IPC:open socket - receive and send to socket - clos ...
- 7 ArcMap能复制,不能粘贴
1:能复制不能粘贴 有时候在编辑数据的时候,需要在不同的shp层之间操作,往往有时候可以复制,但是粘贴那一项是灰色的 解决办法1:打开ArcScene,在关掉即可 解决办法2:如果是在编辑状态下,有时 ...