docker 安裝部署 redis(配置檔案啟動)
阿新 • • 發佈:2018-12-04
安裝 docker
#安裝 docker yum install docker -y systemctl start docker.service
獲取 redis 映象
docker search redis docker pull redis:latest docker images ------ 我用的是 redis:3.2
建立容器
建立存放 redis 容器的目錄
mkdir /home/docker/redis/
編輯配置檔案redis.conf
建立並執行一個名為 myredis 的容器
docker run -p 9093:6379 --name becomredis -v $PWD/redis.conf:/home/azureuser/redis/conf/redis.conf-v $PWD/data:/home/azureuser/redis/data -d redis:3.2 redis-server /home/azureuser/redis/conf/redis.conf --appendonly yes
疑問:啟動以後沒有在data目錄下看到log檔案
檢視活躍的容器
# 檢視活躍的容器 docker ps # 如果沒有 myredis 說明啟動失敗 檢視錯誤日誌 docker logs myredis # 檢視 myredis 的 ip 掛載 埠對映等資訊 docker inspect myredis # 檢視 myredis 的埠對映 docker port myredis
外部訪問 redis 容器服務
# redis-cli 訪問 docker run -it --link myredis:redis --rm redis redis-cli -h redis -p 6379 # -it 互動的虛擬終端 # --rm 退出是刪除此容器
主從配置
新建容器 redis-slave
檢視 redis master 的內部 ip
docker inspect redis #Networks 可以得到 redis master 的 ip 地址 修改 redis-slave 的配置檔案 # 主地址 slaveof master-ip master-port # 主認證 masterauth
重啟 redis-slave
docker restart redis-slave
登入 redis master 使用 info 命令檢視從的狀態
如果配置不成功記得檢查 redis master 的 bind 和 protected-mode 的設定,看下有沒有監聽內網地址,否則 redis-slave 沒辦法通過 redis master 的地址做資料同步
參考:https://segmentfault.com/a/1190000014091287#articleHeader4