CentOS 6 verwendet Docker, um ein Beispiel für den Betrieb einer Redis-Master-Slave-Datenbank bereitzustellen

CentOS 6 verwendet Docker, um ein Beispiel für den Betrieb einer Redis-Master-Slave-Datenbank bereitzustellen

In diesem Artikel wird beschrieben, wie Sie mit Docker Redis-Master-Slave-Datenbankoperationen auf CentOS6 bereitstellen. Teilen Sie uns die Einzelheiten zu Ihrer Information mit:

Verzeichnisstruktur:

/redis

/Dockerdatei

/Liesmich

/redis-3.2.8.tar.gz

./start.sh

Docker-Datei:

VON centos
WARTUNGSBEAUFTRAGTER qiongtao.li [email protected]
HINZUFÜGEN ./redis-3.2.8.tar.gz /opt
HINZUFÜGEN ./start.sh /opt/start_redis.sh
RUN echo "Asia/shanghai" > /etc/zeitzone \
 && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
 && yum -y installiere gcc make \
 && ln -s /opt/redis-3.2.8 /opt/redis \
 && cd /opt/redis && make && make install
EXPOSE 6379
EINSTIEGSPUNKT ["sh", "/opt/start_redis.sh"]

start.sh

Rolle=$1
Port = 6379
Passwort=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|Logdatei \"\"|Logdatei ${logfile}|g" $redis_conf
wenn [ "$rolle" == "sklave" ]; dann
 Echo "Sklave"
 sed -i "s|# Slave von <Master-IP> <Master-Port>|Slave von Redis-Master ${Port}|g" $redis_conf
 sed -i "s|# masterauth <Master-Passwort>|masterauth ${Passwort}|g" $redis_conf
anders
 Echo "Meister"
fi
redis-server $redis_conf

Liesmich

Docker rm -f Redis-Master Redis-Slave-1 Redis-Slave-2
docker rmi -f redis
Dockerbuild -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 Setze den Namen hnatao
Docker Exec Redis-Master Redis-CLI -a Abc123 Namen abrufen
Docker exec redis-slave-1 redis-cli -a Abc123 Namen abrufen
Docker Exec Redis-Slave-2 Redis-CLI -a Abc123 Namen abrufen
docker exec redis-master grep -E "binden|dir|erfordern|logfile|slaveof|masterauth" /opt/redis/redis.conf
docker exec redis-slave-1 grep -E "binden|dir|erfordern|logfile|slaveof|masterauth" /opt/redis/redis.conf
docker exec redis-slave-2 grep -E "binden|dir|erfordern|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

Testen der Installation und Bereitstellung

cat Readme|während Zeile lesen; mache $line; fertig

Ich hoffe, dieser Artikel hilft Ihnen bei der Verwendung von Docker-Containern.

Das könnte Sie auch interessieren:
  • Implementierung eines Redis Master-Slave-Clusters basierend auf Docker
  • Detaillierte Erläuterung der Redis-Master-Slave-Replikationspraxis mit Docker
  • So verwenden Sie Docker zum Erstellen eines Redis-Master-Slaves
  • Verwenden Sie Docker, um einen Redis-Master-Slave-Replikationscluster zu erstellen
  • Detaillierte Erläuterung des Master-Slave-Konfigurationstutorials von Redis unter Docker
  • Beispielpraxis zum Erstellen von Redis Master-Slave + Sentinel basierend auf Docker

<<:  Detaillierte Erläuterung des Überwachungsmethodenfalls von Vue

>>:  So fügen Sie einer Tabelle in SQL Felder und Kommentare hinzu

Artikel empfehlen

Detaillierte Erklärung der neuen Array-Methoden in JavaScript es6

Inhaltsverzeichnis 1. fürJedes() 2. arr.filter() ...

Implementierung der Knotenverbindung zur MySQL-Abfragetransaktionsverarbeitung

Inhaltsverzeichnis Geben Sie das Thema MySQL ein:...

CSS-Implementierungscode für horizontale und vertikale Fortschrittsbalken

Manchmal ist es schön, ein paar nette Scrollbar-E...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.16 winx64

Ich habe erst vor Kurzem angefangen, mich mit Dat...

So konfigurieren Sie Benutzerrollenberechtigungen in Jenkins

Die Jenkins-Konfiguration von Benutzerrollenberec...

Ubuntu 15.04 öffnet den MySQL-Remote-Port 3306

Ubuntu 15.04 öffnet den MySQL-Remote-Port 3306. A...

Bringen Sie Ihnen bei, wie Sie die rekursive Methode von MySQL8 verwenden

Ich habe zuvor einen Artikel über rekursive Abfra...

Beispiel zum Erstellen eines Datenbanknamens mit Sonderzeichen in MySQL

Vorwort In diesem Artikel wird erklärt, wie Sie i...

Gojs implementiert Ameisenlinien-Animationseffekt

Inhaltsverzeichnis 1. Gojs-Implementierung 1. Zei...

Erste Schritte Tutorial für Anfänger ④: So binden Sie Unterverzeichnisse

Um zu verstehen, was das bedeutet, müssen wir zunä...

TimePicker im Element deaktiviert einen Teil der Zeit (deaktiviert auf Minuten)

Die Projektanforderungen lauten: Datum und Uhrzei...