This article describes how to use docker to deploy redis master-slave database operations on centos6. Share with you for your reference, the details are as follows: Directory structure:
Dockerfile: FROM centos MAINTAINER qiongtao.li [email protected] 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 Test the installation and deployment cat Readme|while read line; do $line; done I hope this article will help you use Docker containers. You may also be interested in:
|
<<: Detailed explanation of Vue's monitoring method case
>>: Detailed explanation of Vue's methods and properties
Which historical version can the current transact...
This note is an installation tutorial. It has no ...
Placing a search box in the top menu bar is a com...
Preface scp is the abbreviation of secure copy. s...
This article will introduce some commonly used ar...
When the existing video player cannot meet the ne...
First, let's simulate the data coming from th...
When we perform automatic discovery, there is alw...
MySQL Lock Overview Compared with other databases...
Having used MySQL for such a long time, I believe...
Table of contents 1. Concurrent access control 2....
Table of contents 1. Digital Enumeration 2. Strin...
Learning CSS3 is more about getting familiar with...
Although the frequency of starting the shell is v...
Preface: This article is based on the experience ...