• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    centos6使用docker部署redis主从数据库操作示例

    本文实例讲述了centos6使用docker部署redis主从数据库操作。分享给大家供大家参考,具体如下:

    目录结构:

    /redis

        /Dockerfile

        /Readme

        /redis-3.2.8.tar.gz

        /start.sh

    Dockerfile:

    FROM centos
    MAINTAINER qiongtao.li hnatao@126.com
    ADD ./redis-3.2.8.tar.gz /opt
    ADD ./start.sh /opt/start_redis.sh
    RUN echo "Asia/shanghai" > /etc/timezone \
    
     && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    
     && yum -y install gcc make \
    
     && ln -s /opt/redis-3.2.8 /opt/redis \
    
     && cd /opt/redis && make && make install
    EXPOSE 6379
    ENTRYPOINT ["sh", "/opt/start_redis.sh"]
    
    

    start.sh

    role=$1
    port=6379
    password=Abc123
    redis_conf=/opt/redis/redis.conf
    dir=/data/redis
    logfile=/data/redis/redis.log
    mkdir -p $dir
    sed -i "s|bind 127.0.0.1|bind 0.0.0.0|g" $redis_conf
    sed -i "s|# requirepass foobared|requirepass ${password}|g" $redis_conf
    sed -i "s|dir ./|dir ${dir}|g" $redis_conf
    sed -i "s|logfile \"\"|logfile ${logfile}|g" $redis_conf
    if [ "$role" == "slave" ]; then
     echo "slave"
     sed -i "s|# slaveof <masterip> <masterport>|slaveof redis-master ${port}|g" $redis_conf
     sed -i "s|# masterauth <master-password>|masterauth ${password}|g" $redis_conf
    else
     echo "master"
    fi
    redis-server $redis_conf
    
    

    Readme

    docker rm -f redis-master redis-slave-1 redis-slave-2
    docker rmi -f redis
    docker build -t redis .
    docker run -d --name redis-master redis
    docker run -d --name redis-slave-1 --link redis-master:redis-master redis slave
    docker run -d --name redis-slave-2 --link redis-master:redis-master redis slave
    docker ps -a
    docker exec redis-master redis-cli -a Abc123 set name hnatao
    docker exec redis-master redis-cli -a Abc123 get name
    docker exec redis-slave-1 redis-cli -a Abc123 get name
    docker exec redis-slave-2 redis-cli -a Abc123 get name
    docker exec redis-master grep -E "bind|dir|require|logfile|slaveof|masterauth" /opt/redis/redis.conf
    docker exec redis-slave-1 grep -E "bind|dir|require|logfile|slaveof|masterauth" /opt/redis/redis.conf
    docker exec redis-slave-2 grep -E "bind|dir|require|logfile|slaveof|masterauth" /opt/redis/redis.conf
    docker exec redis-master redis-cli -a Abc123 info
    docker exec redis-slave-1 redis-cli -a Abc123 info
    docker exec redis-slave-2 redis-cli -a Abc123 info
    
    

    测试安装部署

    cat Readme|while read line; do $line; done
    
    

    希望本文所述对大家Docker容器使用有所帮助。

    上一篇:centos6使用docker部署kafka项目的方法分析
    下一篇:centos6使用docker部署zookeeper操作示例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    centos6使用docker部署redis主从数据库操作示例 centos6,使用,docker,部署,redis,