Docker Compose搭建Redis主從復(fù)制環(huán)境的實(shí)現(xiàn)步驟
在Docker中搭建Redis主從架構(gòu)非常方便,下面是一個(gè)示例,演示如何使用Docker Compose設(shè)置一個(gè)Redis主從復(fù)制環(huán)境。首先,確保已經(jīng)安裝了Docker和Docker Compose。
我這里使用OrbStack替代了Docker desktop。
創(chuàng)建一個(gè)名為
redis的文件夾,并在其中創(chuàng)建一個(gè)docker-compose.yml文件。在
docker-compose.yml文件中添加以下內(nèi)容:
version: '3'
services:
redis-master:
image: redis:latest
container_name: redis-master
ports:
- "6379:6379"
networks:
- redis-network
volumes:
- ./redis-master-data:/data
redis-slave:
image: redis:latest
container_name: redis-slave
ports:
- "6380:6379"
networks:
- redis-network
command: redis-server --slaveof redis-master 6379
volumes:
- ./redis-slave-data:/data
networks:
redis-network:
driver: bridge上述docker-compose.yml文件定義了兩個(gè)Redis服務(wù),一個(gè)用于主節(jié)點(diǎn)(redis-master),另一個(gè)用于從節(jié)點(diǎn)(redis-slave)。主節(jié)點(diǎn)將監(jiān)聽默認(rèn)端口6379,從節(jié)點(diǎn)將監(jiān)聽端口6380。此外,我們創(chuàng)建了一個(gè)自定義網(wǎng)絡(luò)(redis-network),以便主從節(jié)點(diǎn)可以相互通信。
創(chuàng)建兩個(gè)文件夾
redis-master-data和redis-slave-data,用于存儲(chǔ)主節(jié)點(diǎn)和從節(jié)點(diǎn)的數(shù)據(jù)。打開終端,導(dǎo)航到包含
docker-compose.yml文件的文件夾,并運(yùn)行以下命令啟動(dòng)容器:
docker-compose up -d
這將下載Redis鏡像(如果尚未下載)并啟動(dòng)主從容器。

docker ps查看容器狀態(tài)

- 檢查主從復(fù)制是否正常工作。您可以使用
redis-cli連接到主節(jié)點(diǎn)并執(zhí)行一些寫操作:
docker exec -it redis-master redis-cli
在redis-cli中,執(zhí)行以下命令:
SET mykey "Hello, Redis!"

然后,使用另一個(gè)redis-cli連接到從節(jié)點(diǎn),檢查數(shù)據(jù)是否已經(jīng)復(fù)制:
docker exec -it redis-slave redis-cli
在從節(jié)點(diǎn)的redis-cli中,執(zhí)行以下命令:
GET mykey
從節(jié)點(diǎn)上看到相同的值,這表明主從復(fù)制已成功設(shè)置。

通過這個(gè)示例,我們可以在Docker容器中輕松搭建Redis主從架構(gòu),以測(cè)試和學(xué)習(xí)Redis復(fù)制功能。請(qǐng)注意,這只是一個(gè)簡(jiǎn)單的示例,實(shí)際生產(chǎn)環(huán)境中可能需要更多的配置和安全性考慮。
以上就是Docker Compose搭建Redis主從復(fù)制環(huán)境的實(shí)現(xiàn)步驟的詳細(xì)內(nèi)容,更多關(guān)于Docker Compose搭建Redis主從復(fù)制的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
詳解在Docker容器內(nèi)外互相拷貝數(shù)據(jù)的方法
本篇文章主要介紹了詳解在Docker容器內(nèi)外互相拷貝數(shù)據(jù)的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03
docker 在容器外執(zhí)行某個(gè)容器內(nèi)的某個(gè)命令操作
這篇文章主要介紹了docker 在容器外執(zhí)行某個(gè)容器內(nèi)的某個(gè)命令操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11
docker實(shí)現(xiàn)本地seata分布式環(huán)境搭建詳解
這篇文章主要為大家詳細(xì)介紹了docker實(shí)現(xiàn)本地seata分布式環(huán)境搭建的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下2024-03-03
Dockerfile構(gòu)建自定義鏡像的實(shí)現(xiàn)
Dockerfile構(gòu)建鏡像的方式就目前而言是使用最為廣泛的,本文主要介紹了Dockerfile構(gòu)建自定義鏡像的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08

