在 docker 中復制 redis 需要設置主從復制。具體步驟包括:1. 創建主 redis 容器;2. 啟動副本容器并連接到主容器;3. 驗證復制;4. 執行故障轉移(如果需要);5. 擴展副本(可選)。
如何在 Docker 中復制 Redis
在 Docker 中復制 Redis 涉及創建主從復制設置。以下步驟將指導你完成此過程:
1. 創建主 Redis 容器
<a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/15865.html" target="_blank">docker</a> run -d --name <a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/15737.html" target="_blank">redis</a>-master redis:latest
登錄后復制
2. 啟動副本容器并連接到主容器
docker run --rm -it --link redis-master:redis redis:latest \ redis-cli --slaveof redis-master 6379
登錄后復制
3. 驗證復制
docker exec redis-master redis-cli info replication
登錄后復制
此命令將在主容器中輸出以下信息:
connected_slaves:1 slave0:ip=172.17.0.2,port=6379,state=online,offset=14467,lag=0
登錄后復制
4. 故障轉移
如果主容器發生故障,將自動觸發故障轉移,并選擇一個副本作為新主。你可以通過以下命令手動觸發故障轉移:
docker exec redis-master redis-cli SLAVEOF NO ONE
登錄后復制
5. 擴展副本
要擴展副本數量,請重復步驟 2。每個副本將自動連接到主容器。
提示:
使用 –net=host 參數允許容器直接使用主機的網絡堆棧,從而簡化容器之間的通信。
為容器分配持久性存儲,以保留數據,即使容器重新啟動或發生故障。
監控復制設置,確保所有副本都正常運行。