Docker + Redis 主从环境搭建

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 环境说明DockerUbuntu/CentOSRedis v4.0.10redis.conf  redis.conf是Redis的核心配置文件,默认docker运行的redis是不存在配置文件的,这里可以先从官网下载: wget http://download.redis.io/redis-stable/redis.conf  下面分别介绍是否指定redis.conf来搭建Redis主从。

环境说明

  • Docker
  • Ubuntu/CentOS
  • Redis v4.0.10

redis.conf

  redis.conf是Redis的核心配置文件,默认docker运行的redis是不存在配置文件的,这里可以先从官网下载:

    wget http://download.redis.io/redis-stable/redis.conf

  下面分别介绍是否指定redis.conf来搭建Redis主从。

不指定redis.conf

1. 运行Redis

1.1 master(主库)
    # 运行服务
    docker run -it --name redis-master -d -p 6300:6379 redis redis-server --requirepass masterpassword
    # 测试连接redis
    docker exec -it redis-master redis-cli -a <master-password> 
1.2 slave(从库)
    # 运行服务
    docker run -it --name redis-slave -d -p 6301:6379 redis redis-server --requirepass slavepassword # 设定从库密码,可选
    # 测试连接redis
    docker exec -it redis-slave redis-cli
    # 进行密码认证
    auth <slave-password>

2. 主从连接及查看

2.1 从库配置

  slaveof <master-ip> <master-port><master-ip>为主库服务ip,<master-port>表示主库所在端口,默认6379

2.2 密码认证

  config set masterauth <master-password><master-password>即为主库访问密码

2.3 测试命令

  输入infoinfo Replication

img_91a319edf2b3576427784f17e7316c12.png
查看主从

指定redis.conf

  将上面下载好的redis.conf复制,分别为redis-master.conf和redis-slave.conf,找到指定配置并修改如下:

  • redis-master.conf
    # bind 127.0.0.1 # 注释当前行,表示任意ip可连
    daemonize yes # 让redis服务后台运行
    requirepass masterpassword # 设定密码
  • redis-slave.conf
    # bind 127.0.0.1
    daemonize yes
    requirepass slavepassword # 从库密码,可选配置
    # <masterip>表示主库所在的ip,而<masterport>则表示主库启动的端口,默认是6379
    slaveof <masterip> <masterport>
    # 主库有密码必需要配置,<master-password>代表主库的访问密码
    masterauth <master-password>

1. 运行Redis

1.1 master(主库)
    # 运行服务
    docker run -it --name redis-master -v /root/redis/redis-master.conf:/usr/local/etc/redis/redis.conf -d -p 6300:6379 redis /bin/bash
    # 进入容器
    docker exec -it redis-master bash
    # 加载配置
    redis-server /usr/local/etc/redis/redis.conf
    # 测试连接
    redis-cli -a <master-password> 
1.2 slave(从库)
    # 运行服务
    docker run -it --name redis-slave -v /root/redis/redis-slave.conf:/usr/local/etc/redis/redis.conf -d -p 6301:6379 redis /bin/bash
    # 进入容器
    docker exec -it redis-slave bash
    # 加载配置
    redis-server /usr/local/etc/redis/redis.conf
    # 测试连接
    redis-cli
    # 密码认证
    auth <slave-password>

2. 主从查看

  输入infoinfo Replication

img_91a319edf2b3576427784f17e7316c12.png
查看主从

相关链接

Redis commands
Redis 命令参考
Docker环境搭建redis集群(主从模式)

目录
相关文章
|
7月前
|
NoSQL Redis Docker
Docker——阿里云服务器利用docker搭建redis集群
本文详细记录了使用Docker搭建Redis集群的过程,包括检查Docker和Docker Compose的安装、创建Redis配置文件、编写`docker-compose.yml`文件、启动Redis节点、创建Redis集群的具体步骤,以及最终的验证方法。文章还提供了在多服务器环境下搭建Redis集群的注意事项,帮助读者全面了解 Redis 集群的部署流程。
754 69
|
8月前
|
存储 NoSQL Redis
Docker 部署 Redis
在使用 Docker 部署 Redis 时,为实现数据持久化,需正确挂载容器内的数据目录到宿主机。推荐命令如下: ``` docker run -d --name redis -v /mnt/data/redis:/data -p 6379:6379 redis ``` 该命令将宿主机的 `/mnt/data/redis` 目录挂载到容器的 `/data` 目录,确保 Redis 数据持久化。此路径更通用,适合大多数场景。避免使用不匹配的挂载路径,如 `/var/lib/redis` 或 `/mnt/data/redis` 到非默认目录,以防止数据无法正确持久化。
|
6月前
|
NoSQL Redis 数据库
Docker平台上的Redis镜像运行
这就是如何在Docker平台上运行Redis镜像的全部过程。走进Docker和Redis的世界,探索更多可能!
394 10
|
10月前
|
NoSQL 关系型数据库 Redis
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
257 14
|
9月前
|
关系型数据库 MySQL 应用服务中间件
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
298 7
|
存储 NoSQL 网络安全
Redis安装(单机、主从、哨兵、集群)
Redis安装(单机、主从、哨兵、集群)
271 1
|
NoSQL Redis 数据安全/隐私保护
redis高可用环境搭建(主从+哨兵)
redis高可用环境搭建(主从+哨兵)
177 0
|
缓存 NoSQL 应用服务中间件
分布式缓存之Redis(持久化、主从、哨兵、分片集群)
分布式缓存之Redis(持久化、主从、哨兵、分片集群)
|
NoSQL 编译器 Redis
轻松掌握组件启动之Redis单机、主从、哨兵、集群配置
这篇文章介绍了Redis的单机配置启动和主从架构、哨兵、集群搭建方法。无论你是初学者还是有一定经验的开发者,这篇文章都能为你提供实用的指导,让你轻松掌握Redis的配置和架构搭建。
254 0
|
NoSQL Redis