Docker運転Redis


転載先:https://blog.csdn.net/simatongming/article/details/78598063
一.docker単一redisの実行
1.引き抜きミラー:docker pull redis2.運転容器(ローカルイメージ:docker.io/redis latest 8 f 2 e 175 b 3 bd 1 2 weeks ago 106.6 MB): docker run -d --name redis-S -v /home/tym/docker/redis/data/:/data  docker.io/redis redis-server/-dはバックグラウンドで実行されます//–nameは別名//-v/home/tym/docker/redis/data/:/dataは/home/tym/docker/redis/data/をコンテナにマウントする/dataです(データはデフォルトでVOLUME/dataディレクトリに格納されます./home/tym/docker/redis/dataの代わりに$PWD/dataを使用できます).
3.実行クライアント:docker run -it --link redis-S --rm docker.io/redis redis-cli -h redis-S -p 6379/-itはインタラクティブモード(-i:インタラクティブモードでコンテナを実行、-t:コンテナに偽入力端末を再割り当て)/-linkは別のコンテナを接続し、コンテナ名をhost//-rmとして自動的にコンテナをクリーンアップできます.ここはテストであり、フロントプログラムに属しています
二.dockerはredisプライマリ・スレーブ・レプリケーション・モード(2つのデータベースを例に)を実行します.プライマリ・スレーブ・レプリケーション・モード:プライマリ・データベース(master)は読み書き可能で、データベース(slave)からは読み書き可能です.プライマリ・データベースの書き込みはスレーブ・データベースに同期され、データベースから主に読み取り操作が行われます.プライマリ・データベースには複数のスレーブ・データベースがあり、1つのスレーブ・データベースには1つのプライマリ・データベースしかありません.
1.2つのサービスを開始します.
docker run -d --name redis-master -v /home/tym/docker/redis/data/:/data  docker.io/redis redis-serverdocker run  -d --name redis-slave --link redis-master docker.io/redis redis-server --port 6380 --slaveof redis-master 637912

2.対応するクライアントを起動する:
docker run -it --link redis-master --rm docker.io/redis redis-cli -h redis-master -p 6379docker run -it --link redis-slave --rm docker.io/redis redis-cli -h redis-slave -p 638012

テスト結果:
使用:slaveof no one主従関係を終了