前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >docker搭建Redis集群-主从复制

docker搭建Redis集群-主从复制

作者头像
崔哥
发布2022-05-25 20:32:22
4530
发布2022-05-25 20:32:22
举报
文章被收录于专栏:崔哥的专栏

一主二从

WechatIMG1681.jpeg
WechatIMG1681.jpeg

代码目录

代码语言:javascript
复制
│ docker-compose.yml
├─apache
│   Dockerfile
│   index.php
├─follower
│   Dockerfile
│   run.sh
└─leader
    Dockerfile

docker-compose.yml

代码语言:javascript
复制
# docker-compose.yml
# tell docker what version of the docker-compose.yml we're using
version: '3'

# define the network
networks:
  web-network:

# start the services section
services:
  # define the name of our service
  # corresponds to the "--name" parameter
  apache:
    build:
      context: ./apache
    # defines the port mapping
    # corresponds to the "-p" flag
    ports:
      - 80:80
    tty: true
    volumes:
      - ./apache:/var/www/html
    networks:
      - web-network

  redis-leader:
    build:
      context: ./leader
    tty: true
    networks:
      - web-network

  redis-follower:
    build:
      context: ./follower
    tty: true
    networks:
      - web-network
    deploy:
      replicas: 2

apache/index.php

代码语言:javascript
复制
# apache/index.php
<?php
# 访问链接http://localhost/,测试结果
$redis=new Redis;
$redis->connect('redis-leader', '6379');
$redis->set('aa', 'aa123');

$redis->connect('redis-follower', '6379');
echo $redis->get('aa');

apache/Dockerfile

代码语言:javascript
复制
FROM php:7.4-apache
RUN pecl install redis-5.3.4 \
    && docker-php-ext-enable redis

# 将apache目录下的文件复制到容器内/var/www/html
# COPY . .

follower/Dockerfile

代码语言:javascript
复制
# follower/Dockerfile
FROM redis:6.2.5

ADD run.sh /run.sh
RUN chmod a+x /run.sh
CMD /run.sh

follower/run.sh

代码语言:javascript
复制
# follower/run.sh
#!/bin/bash
redis-server --replicaof redis-leader 6379

leader/Dockerfile

代码语言:javascript
复制
# leader/Dockerfile
FROM redis:6.2.5
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 代码目录
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档