婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > docker下的 redis 之持久化存儲詳解

docker下的 redis 之持久化存儲詳解

熱門標簽:智能電銷機器人真的有用么 百度地圖底圖標注 激光標記地圖標注 中國地圖標注上各個省 撫州市城區地圖標注 電銷智能機器人試用 高德地圖標注足跡怎么打標 新鄉牧野400電話申請 企業辦理400電話收費標準

本章節開始 我們在docker下 進行 spring Boot項目操作redis

準備工作:

(1) 創建文件夾:usr/local/work/share

(2) 拉取項目,這是一個打包好的jar包

(3) 將拉取的 jar包放到剛剛創建的文件夾下,同時再創建一個名字為 docker-compose.yml的文件

(4) 在 tmp目錄中創建一個 data 文件夾

(5) 并在 docker-compose.yml文件中寫入以下內容:

redis:
 image: redis:3
 ports:
 - "6379:6379"
 volumes:
 - /tmp/data:/data
 - java:
 image: bolingcavalry/springbootrun:0.0.1
 links:
 - redis:redishost
 volumes:
  - /usr/local/work/share:/usr/Downloads
 ports:
 - "8080:8080"
 tty: true

這里我們只對 volumes 進行講解,簡單明了的說就是: docker 中 redis 容器存儲的數據進行持久化到本地目錄

官方說法:

Redis端口6379已經由Redis預先配置好,從容器中暴露給主機,在docker-compose.yml文件中,將它從主機暴露給外部,這樣就可以為任何節點到Redis桌面管理器中,并管理這個Redis實例。 最重要的是,redis規范中有幾件事情使數據在這個堆棧的部署之間持續存在:redis總是在管理器上運行,所以它總是使用相同的文件系統;redis在主機的文件系統中訪問一個任意目錄作為容器內部的/data,這是Redis存儲數據的地方。

總之,這是在Redis數據的主機物理文件系統中創建“真實來源”。如果沒有這個,Redis將把它的數據存儲在容器文件系統中的/data中,如果這個容器被重新部署的話,這些數據將被清除。 這個真實來源有兩個組成部分:placement在Redis服務上的placement約束,確保它始終使用相同的主機;創建的volumes允許容器作為/data(在Redis容器內)訪問/data(在主機上),在容器來來去去的時候,存儲在指定主機上的/data文件將會持續存在,從而保持連續性。

二.啟動容器

將上面的內容寫到docker-compose.yml之后,在此文件所在目錄執行命令docker-compose up -d,即可啟動兩個容器,再執行docker ps可以看到容器信息如下:

jar包下載下來后,放入本機的/usr/local/work/share目錄,這個目錄和容器的/usr/Downloads是映射關系,所以我們進入容器后可以直接訪問這個文件;

三,部署jar包

執行以下命令進入運行springboot容器:

docker exec -it share_java_1 /bin/bash

進入/usr/Downloads目錄,可以看到文件:

redistempletedemo-0.0.1-SNAPSHOT.jar

執行以下命令啟動容器:

java -jar redistempletedemo-0.0.1-SNAPSHOT.jar

啟動成功,信息如下:

本地測試

執行

http://localhost:8080/set/name/hxy

執行

http://localhost:8080/get/name

我們再登上redis容器去檢查一下,執行以下命令進入redis容器:

docker exec -it share_redis_1 /bin/bash

redis-cli

在控制臺執行get name即可看到name對應的值,如下所示:

簡單的測試已經成功,上面我們也說到只要 redis 的容器關閉所有的數據將全部消失,但是我們在上面的docker-compose.yml中配置了

volumes: - /tmp/data:/data

這就說明剛剛保存的數據持久化到了本地 tmp/data目錄下.打開 tmp/data會發現一個名字叫dump.rdb的文件

用終端打開它輸入命令: vi dump.rdb 就會看到你剛剛保存的數據name:hxy

到此 dcoker下redis 的持久化就說到這里,如果有更好的方式請多指教.感謝你看到這里。

相關項目: https://github.com/haoxiaoyong1014/springboot-examples/tree/master/springboot-redis-docker

補充知識:Docker 下安裝 Redis 啟動并設置密碼、開啟持久化

拉取鏡像

docker pull redis:5.0

啟動并設置密碼、開啟持久化

docker run -d --name redis-server -p 6379:6379 redis:5.0 --requirepass "mypassword" --appendonly yes

以上這篇docker下的 redis 之持久化存儲詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

標簽:辛集 邯鄲 南通 忻州 海西 臨汾 西安 延安

巨人網絡通訊聲明:本文標題《docker下的 redis 之持久化存儲詳解》,本文關鍵詞  docker,下的,redis,之,持久化,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《docker下的 redis 之持久化存儲詳解》相關的同類信息!
  • 本頁收集關于docker下的 redis 之持久化存儲詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 华池县| 岳阳县| 元氏县| 措美县| 喀喇沁旗| 河池市| 于都县| 张家界市| 新竹市| 梁河县| 蕲春县| 五大连池市| 贡嘎县| 平阳县| 信宜市| 湛江市| 阿巴嘎旗| 长岛县| 固安县| 辉南县| 泸水县| 民丰县| 冀州市| 克拉玛依市| 措勤县| 辉南县| 石嘴山市| 蒙山县| 乡城县| 颍上县| 尚义县| 洞口县| 通渭县| 法库县| 石城县| 微博| 门头沟区| 崇义县| 始兴县| 吉安县| 北川|