docker上安裝部署redis及解決redis數據丟失問題


【docker安裝redis】通過docker命令

  1.拉取鏡像

docker pull redis #拉取最后版本的docker-redis鏡像
docker pull redis:版本號 #拉取指定版本的redis鏡像

  2.查看已安裝的鏡像

docker images

  3.創建容器且啟動容器

docker run --name myredis -p 6379:6379 -d redis redis-server

  –name=“xxxx”: 為容器指定一個名稱

  -p: 指定端口映射,格式為:主機(宿主) 端口:容器端口

  -d: 后台運行容器,並返回容器ID

  -d后面的redis是你已安裝的鏡像名稱

  redis-server是redis文件下的啟動文件 代表啟動redis文件

  4.linux上進入redis操作界面

  docker exec -it myredis bash
    redis-cli
  

 

   5.刪除容器及鏡像

  1.查看容器ID

docker ps -a

  2.關閉容器

docker stop 容器ID

  3.刪除容器

docker rm 容器ID

  4.查看鏡像ID

docker images

  5.刪除容器

docker rmi 鏡像ID

【Linux安裝redis和部署】通過安裝包

  https://www.cnblogs.com/zdd-java/p/10288734.html

  如果安裝完重啟數據會丟失那就要配置一下持久化

【日期】

2021-04-18

【問題】

redis數據丟失問題,然后就嘗試重新安裝redis,各種百度找原因。

【原因】

未給redis配置物理內存,所以一但重啟就數據全沒了。

【如何發現】

測試

【如何修復】:配置linux上的系統文件 sysctl.conf 

  1.編輯 sysctl.conf  配置文件 

vim /etc/sysctl.conf 

   2.直接在尾端添加 vm.overcommit_memory 配置(這個配置就是給系統分配物理內存),如下

    內核參數overcommit_memory 

    它是 內存分配策略  可選值:0、1、2

    0, 表示內核將檢查是否有足夠的可用內存供應用進程使用;如果有足夠的可用內存,內存申請允許;否則,內存申請失敗,並把錯誤返回給應用進程。
    1, 表示內核允許分配所有的物理內存,而不管當前的內存狀態如何。
    2, 表示內核允許分配超過所有物理內存和交換空間總和的內存。

vm.overcommit_memory = 1

   3. esc鍵退出編輯--》輸入 :wq 保存退出 

   4.輸入使配置文件生效命令

sysctl -p   

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM