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

W3C Tutorial (3): W3C HTML Aktivitäten

HTML ist eine Hybridsprache, die zum Veröffentlic...

HTML-Elemente (Tags) und ihre Verwendung

a : Gibt die Start- oder Zielposition eines Hyper...

React implementiert doppelten Schieberegler zum Querschieben

In diesem Artikel wird der spezifische Code für R...

vue + springboot realisiert den Login-Bestätigungscode

In diesem Artikelbeispiel wird der spezifische Co...

So verwenden Sie Shell-Skripte in Node

Hintergrund Während der Entwicklung benötigen wir...

Grundlegende Verwendung von Unterabfragen in MySQL

Inhaltsverzeichnis 1. Unterabfragedefinition 2. U...

Einführung in Javascript DOM, Knoten und Elementerfassung

Inhaltsverzeichnis DOM Knoten Elementknoten: Text...

Mybatis implementiert Details zum Abfangen und Ändern von SQL-Abfragen

Vorwort Eine der Funktionen eines Interceptors be...

Kleine Details der Web-Frontend-Entwicklung

1 Das Select-Tag muss geschlossen sein <select&...