拉取redis5.0.3镜像

# docker pull daocloud.io/library/redis:5.0.3

[root@localhost ~]# docker pull daocloud.io/library/redis:5.0.3
5.0.3: Pulling from library/redis
5e6ec7f28fb7: Pull complete
7fdf7fb3ec49: Pull complete
4bd5dbe7bfa7: Pull complete
71f540684935: Pull complete
8c6dbecedd0f: Pull complete
9d190b6684fc: Pull complete
Digest: sha256:e1dc07bf1465661b90b18c1c766c00f733254bf64fcf2ad7a335b2fc1fa31870
Status: Downloaded newer image for daocloud.io/library/redis:5.0.3
[root@localhost ~]#
[root@localhost ~]# docker images
centos                                                 latest              9f38484d220f        2 weeks ago         202MB
daocloud.io/library/redis                              5.0.3               82629e941a38        2 months ago        95MB
ubuntu                                                 16.04               7e87e2b3bf7a        2 months ago        117MB
mysql                                                  latest              102816b1ee7d        3 months ago        486MB

给redis5.0.3镜像打标签

# docker tag 82629e941a38 redis

删除源镜像标签

# docker rmi daocloud.io/library/redis:5.0.3

[root@localhost ~]# docker images
REPOSITORY                                             TAG                 IMAGE ID            CREATED             SIZE
centos                                                 latest              9f38484d220f        2 weeks ago         202MB
daocloud.io/library/redis                              5.0.3               82629e941a38        2 months ago        95MB
redis                                                  latest              82629e941a38        2 months ago        95MB
ubuntu                                                 16.04               7e87e2b3bf7a        2 months ago        117MB
mysql                                                  latest              102816b1ee7d        3 months ago        486MB
[root@localhost ~]#
[root@localhost ~]# docker rmi daocloud.io/library/redis:5.0.3
Untagged: daocloud.io/library/redis:5.0.3
Untagged: daocloud.io/library/redis@sha256:e1dc07bf1465661b90b18c1c766c00f733254bf64fcf2ad7a335b2fc1fa31870
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# docker images
REPOSITORY                                             TAG                 IMAGE ID            CREATED             SIZE
centos                                                 latest              9f38484d220f        2 weeks ago         202MB
redis                                                  latest              82629e941a38        2 months ago        95MB
ubuntu                                                 16.04               7e87e2b3bf7a        2 months ago        117MB
mysql                                                  latest              102816b1ee7d        3 months ago        486MB

创建6个redis容器集群

以redis7000为例:

非集群模式

# docker run --name redis8000 -p 8000:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no

集群模式

# docker run --name redis7000 -p 7000:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no --cluster-enabled yes

说明:

redis的密码为123456

Redis持久化功能已启动

保护模式已经关闭

集群模式已开启

[root@localhost ~]# docker run --name redis7000 -p 7000:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no --cluster-enabled yes
d8b4eb2b5459b2eaceca1d957b9422123ac906c41a5bf8d23bd65545dda33c77
[root@localhost ~]# docker run --name redis7001 -p 7001:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no --cluster-enabled yes
163c705af09706b38e2f327febdecbf9c37d3b1528f7d4bfb667eb257d3a0be7
[root@localhost ~]# docker run --name redis7002 -p 7002:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no --cluster-enabled yes
e4604f44be05811a9dbcf0af9f3f0b6db976dde9c8c2772d8773e6979fbb7284
[root@localhost ~]# docker run --name redis7003 -p 7003:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no --cluster-enabled yes
a76f43511bb20945695943d009041b2f8398b1e3a5217524edfa34589ad91311
[root@localhost ~]# docker run --name redis7004 -p 7004:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no --cluster-enabled yes
9eace890c3a44314a01ef58fc0d09086f752be95300165868435b8dfbb1f61b2
[root@localhost ~]# docker run --name redis7005 -p 7005:6379 -d redis redis-server --requirepass "123456" --appendonly yes --protected-mode no --cluster-enabled yes
e91e99f1c31f2deab8f87f0af75625087a2913ff382ef15e62bce2b8d472e60f
[root@localhost ~]#

查看容器状态

# docker ps

[root@localhost ~]# docker ps
CONTAINER ID        IMAGE                                                  COMMAND                  CREATED              STATUS              PORTS                    NAMES
e91e99f1c31f        redis                                                  "docker-entrypoint.s…"   6 seconds ago        Up 5 seconds        0.0.0.0:7005->6379/tcp   redis7005
9eace890c3a4        redis                                                  "docker-entrypoint.s…"   16 seconds ago       Up 16 seconds       0.0.0.0:7004->6379/tcp   redis7004
a76f43511bb2        redis                                                  "docker-entrypoint.s…"   32 seconds ago       Up 31 seconds       0.0.0.0:7003->6379/tcp   redis7003
e4604f44be05        redis                                                  "docker-entrypoint.s…"   46 seconds ago       Up 45 seconds       0.0.0.0:7002->6379/tcp   redis7002
163c705af097        redis                                                  "docker-entrypoint.s…"   56 seconds ago       Up 56 seconds       0.0.0.0:7001->6379/tcp   redis7001
d8b4eb2b5459        redis                                                  "docker-entrypoint.s…"   About a minute ago   Up About a minute   0.0.0.0:7000->6379/tcp   redis7000

查看6个redis容器的IP

# docker inspect redis7000 | grep IPAddress

[root@localhost ~]# docker inspect redis7000 | grep IPAddress"SecondaryIPAddresses": null,"IPAddress": "172.17.0.6","IPAddress": "172.17.0.6",
[root@localhost ~]#
[root@localhost ~]# docker inspect redis7001 | grep IPAddress"SecondaryIPAddresses": null,"IPAddress": "172.17.0.8","IPAddress": "172.17.0.8",
[root@localhost ~]#
[root@localhost ~]# docker inspect redis7002 | grep IPAddress"SecondaryIPAddresses": null,"IPAddress": "172.17.0.9","IPAddress": "172.17.0.9",
[root@localhost ~]#
[root@localhost ~]# docker inspect redis7003 | grep IPAddress"SecondaryIPAddresses": null,"IPAddress": "172.17.0.10","IPAddress": "172.17.0.10",
[root@localhost ~]# docker inspect redis7004 | grep IPAddress"SecondaryIPAddresses": null,"IPAddress": "172.17.0.11","IPAddress": "172.17.0.11",
[root@localhost ~]#
[root@localhost ~]# docker inspect redis7005 | grep IPAddress"SecondaryIPAddresses": null,"IPAddress": "172.17.0.12","IPAddress": "172.17.0.12",
[root@localhost ~]#

进入redis7000容器

# docker exec -it redis7000 bash

客户端交互

[root@localhost ~]# docker exec -it redis7000 bash
root@d8b4eb2b5459:/data#
root@d8b4eb2b5459:/data# redis-cli
127.0.0.1:6379> exit
root@d8b4eb2b5459:/data#
root@d8b4eb2b5459:/data# redis-cli -h 172.17.0.6 -p 6379
172.17.0.6:6379>
172.17.0.6:6379> exit
root@d8b4eb2b5459:/data#
root@d8b4eb2b5459:/data# redis-cli -h 172.17.0.8 -p 6379
172.17.0.8:6379>
172.17.0.8:6379> exit
root@d8b4eb2b5459:/data#

集群创建

# redis-cli -a 123456 --cluster create 172.17.0.6:6379 172.17.0.8:6379 172.17.0.9:6379 172.17.0.10:6379 172.17.0.11:6379 172.17.0.12:6379 --cluster-replicas 1

root@d8b4eb2b5459:/data#
root@d8b4eb2b5459:/data# redis-cli -a 123456 --cluster create 172.17.0.6:6379 172.17.0.8:6379 172.17.0.9:6379 172.17.0.10:6379 172.17.0.11:6379 172.17.0.12:6379 --cluster-replicas 1
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
>>> Performing hash slots allocation on 6 nodes...
Master[0] -> Slots 0 - 5460
Master[1] -> Slots 5461 - 10922
Master[2] -> Slots 10923 - 16383
Adding replica 172.17.0.10:6379 to 172.17.0.6:6379
Adding replica 172.17.0.11:6379 to 172.17.0.8:6379
Adding replica 172.17.0.12:6379 to 172.17.0.9:6379
M: 19519487a7db6f2fa5fda5f6e1807befe75665e5 172.17.0.6:6379slots:[0-5460] (5461 slots) master
M: f6adb618124c791db4e31347982d086cd8b58646 172.17.0.8:6379slots:[5461-10922] (5462 slots) master
M: 1b5b85bd1f068a656b88e0e396f7da8bc0242ebf 172.17.0.9:6379slots:[10923-16383] (5461 slots) master
S: ca40bc6c36c7c14a7e91b04bec51bc6bb75eebea 172.17.0.10:6379replicates 19519487a7db6f2fa5fda5f6e1807befe75665e5
S: b25431b20840b04fc2262d246482981a1a49c1cf 172.17.0.11:6379replicates f6adb618124c791db4e31347982d086cd8b58646
S: 53515a889f77bbe553c8fb664983cded5d767826 172.17.0.12:6379replicates 1b5b85bd1f068a656b88e0e396f7da8bc0242ebf
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join
...
>>> Performing Cluster Check (using node 172.17.0.6:6379)
M: 19519487a7db6f2fa5fda5f6e1807befe75665e5 172.17.0.6:6379slots:[0-5460] (5461 slots) master
additional replica(s)
M: 1b5b85bd1f068a656b88e0e396f7da8bc0242ebf 172.17.0.9:6379slots:[10923-16383] (5461 slots) master
additional replica(s)
S: b25431b20840b04fc2262d246482981a1a49c1cf 172.17.0.11:6379slots: (0 slots) slavereplicates f6adb618124c791db4e31347982d086cd8b58646
S: 53515a889f77bbe553c8fb664983cded5d767826 172.17.0.12:6379slots: (0 slots) slavereplicates 1b5b85bd1f068a656b88e0e396f7da8bc0242ebf
M: f6adb618124c791db4e31347982d086cd8b58646 172.17.0.8:6379slots:[5461-10922] (5462 slots) master
additional replica(s)
S: ca40bc6c36c7c14a7e91b04bec51bc6bb75eebea 172.17.0.10:6379slots: (0 slots) slavereplicates 19519487a7db6f2fa5fda5f6e1807befe75665e5
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
root@d8b4eb2b5459:/data#

配置文件启动redis方式docker run -d --name redis_test -p 6379:6379  -v /var/local/conf/redis.conf:/redis.conf redis redis-server /redis.conf

转载于:https://www.cnblogs.com/williamjie/p/11201419.html

docker镜像创建redis5.0.3容器集群相关推荐

  1. ubuntu16 redis5.0以前版本集群部署示例

    简言 1. redis5.0版本以前集群的部署是使用ruby脚本完成的,ruby脚本的安装少略麻烦(主要原因是系统自动安装的版本太低,无法部署集群,必须手动安装) 2. redis5.0版本以后把集群 ...

  2. Deepin+Docker+Redis5.0 安装 Redis集群

    一.开发环境 Deepin15.11 桌面版 Linux操作系统 我的Windows10 VMware15.5.1中 已经安装了Deepin15.11 VitualBox 用来运行Docker容器的虚 ...

  3. centos7 redis5.0以后版本 集群部署示例

    简言 1. redis5.0版本以前的集群部署是使用ruby脚本完成的,略为复杂,具体示例见笔者的这篇博客,https://blog.csdn.net/yzf279533105/article/det ...

  4. ubuntu16 redis5.0以后版本集群部署示例

    简言 1. redis5.0版本以前的集群部署是使用ruby脚本完成的,略为复杂,具体示例见笔者的这篇博客,https://blog.csdn.net/yzf279533105/article/det ...

  5. centos7 redis5.0以前版本 集群部署示例 - 第一篇

    简言 1. redis5.0版本以前的集群部署是使用ruby脚本完成的,ruby脚本的安装少略麻烦(主要原因是系统自动安装的版本太低,无法部署集群,必须手动安装) 2. redis5.0版本以后的集群 ...

  6. 利用Packer自定义镜像创建容器集群

    阿里云容器服务Kubernetes集群支持CentOS操作系统,在绝大多数情况下可以满足客户的要求.但是有些客户由于业务系统对操作系统依赖比较高,希望定制化一些操作系统参数,则可以用自定义镜像来创建K ...

  7. Docker应用:Kubernetes(容器集群)

    Docker应用:Kubernetes(容器集群) 原文:Docker应用:Kubernetes(容器集群) 阅读目录: Docker应用:Hello World Docker应用:Docker-co ...

  8. Docker容器之compose容器集群的快速编排

    Docker容器之compose容器集群的快速编排 前言 一.Docker-compose简介 二.YAML文件格式及编写注意事项 (1)YAML文件格式 (2)YAML格式的注意事项 (3)YAML ...

  9. Docker容器集群--compsoe

    文章目录 一.Docker-compose 简介 二.compose安装 三.YAML 文件格式及编写注意事项 3.1 YAML 文件格式 3.2 YAML格式的注意事项 3.3 YAML数据结构 四 ...

最新文章

  1. HardwareSoftwareTutorial
  2. Linux部署禅道环境
  3. 成本中心、作业中心、工作中心的区别
  4. word存为html图片有两个,如何批量保存Word图片?另存为Word多个图片的方法
  5. 洛谷 P1506 拯救oibh总部-dfs染色法
  6. C#线程调用带参数的方法,给控件赋值
  7. 新手找客户,牢记20句话
  8. Python3小程序:把连续的16进制UTF8编码转换为字符串
  9. 首次击败美国!2019《财富》世界500强公布:129家中国公司上榜
  10. 从新获取jar_SpringBoot配置文件放在jar外部
  11. 函数的调用过程——栈帧。
  12. lstm训练情感分析的优点_「情感分析领域」简单调研
  13. ## python爬取MM131整站图片到本地
  14. 怎么选择论文查重软件?
  15. 汉字拼音首字母检索筛选数据
  16. IE-LAB网络实验室:华为培训中华为数通HCIE考试流程
  17. css3实现数字滚动效果,JS+CSS实现滚动数字时钟效果
  18. 小程序分享至群群消息小结(包括分享到App)
  19. 苹果系统mac(Air)删除Windows合并盘(双系统)的可行方案
  20. SylixOS命令行下内存操作/测试工具

热门文章

  1. 信号处理函数(2)-sigismember()
  2. layui upload 额外参数上传
  3. CSS sprites
  4. linux命令学习之 cp(命令学习之四)
  5. Zabbix2.4安装和问题总结(一)
  6. 虚拟化数据中心服务器硬件配置建议
  7. 我的博客博客之路....
  8. 雅虎公司C#笔试题,看看你能解答多少? [含答案]
  9. continue和break语句的区别
  10. 敏捷个人纸质书:第一章 源于生活和工作的敏捷个人