校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁(yè) > 知識(shí)庫(kù) > docker下的 redis 之持久化存儲(chǔ)詳解

docker下的 redis 之持久化存儲(chǔ)詳解

熱門標(biāo)簽:智能電銷機(jī)器人真的有用么 百度地圖底圖標(biāo)注 激光標(biāo)記地圖標(biāo)注 中國(guó)地圖標(biāo)注上各個(gè)省 撫州市城區(qū)地圖標(biāo)注 電銷智能機(jī)器人試用 高德地圖標(biāo)注足跡怎么打標(biāo) 新鄉(xiāng)牧野400電話申請(qǐng) 企業(yè)辦理400電話收費(fèi)標(biāo)準(zhǔn)

本章節(jié)開始 我們?cè)赿ocker下 進(jìn)行 spring Boot項(xiàng)目操作redis

準(zhǔn)備工作:

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

(2) 拉取項(xiàng)目,這是一個(gè)打包好的jar包

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

(4) 在 tmp目錄中創(chuàng)建一個(gè) data 文件夾

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

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

這里我們只對(duì) volumes 進(jìn)行講解,簡(jiǎn)單明了的說就是: docker 中 redis 容器存儲(chǔ)的數(shù)據(jù)進(jìn)行持久化到本地目錄

官方說法:

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

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

二.啟動(dòng)容器

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

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

三,部署jar包

執(zhí)行以下命令進(jìn)入運(yùn)行springboot容器:

docker exec -it share_java_1 /bin/bash

進(jìn)入/usr/Downloads目錄,可以看到文件:

redistempletedemo-0.0.1-SNAPSHOT.jar

執(zhí)行以下命令啟動(dòng)容器:

java -jar redistempletedemo-0.0.1-SNAPSHOT.jar

啟動(dòng)成功,信息如下:

本地測(cè)試

執(zhí)行

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

執(zhí)行

http://localhost:8080/get/name

我們?cè)俚巧蟫edis容器去檢查一下,執(zhí)行以下命令進(jìn)入redis容器:

docker exec -it share_redis_1 /bin/bash

redis-cli

在控制臺(tái)執(zhí)行g(shù)et name即可看到name對(duì)應(yīng)的值,如下所示:

簡(jiǎn)單的測(cè)試已經(jīng)成功,上面我們也說到只要 redis 的容器關(guān)閉所有的數(shù)據(jù)將全部消失,但是我們?cè)谏厦娴膁ocker-compose.yml中配置了

volumes: - /tmp/data:/data

這就說明剛剛保存的數(shù)據(jù)持久化到了本地 tmp/data目錄下.打開 tmp/data會(huì)發(fā)現(xiàn)一個(gè)名字叫dump.rdb的文件

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

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

相關(guān)項(xiàng)目: https://github.com/haoxiaoyong1014/springboot-examples/tree/master/springboot-redis-docker

補(bǔ)充知識(shí):Docker 下安裝 Redis 啟動(dòng)并設(shè)置密碼、開啟持久化

拉取鏡像

docker pull redis:5.0

啟動(dòng)并設(shè)置密碼、開啟持久化

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

以上這篇docker下的 redis 之持久化存儲(chǔ)詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

標(biāo)簽:辛集 邯鄲 南通 忻州 海西 臨汾 西安 延安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《docker下的 redis 之持久化存儲(chǔ)詳解》,本文關(guān)鍵詞  docker,下的,redis,之,持久化,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《docker下的 redis 之持久化存儲(chǔ)詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于docker下的 redis 之持久化存儲(chǔ)詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 陆河县| 合山市| 扎鲁特旗| 岳阳市| 慈溪市| 年辖:市辖区| 明光市| 肇庆市| 南木林县| 萨迦县| 甘洛县| 钟祥市| 丽水市| 道孚县| 河东区| 汉川市| 高唐县| 石河子市| 巫溪县| 逊克县| 绥宁县| 成都市| 德格县| 鲁山县| 武鸣县| 泰和县| 修水县| 二连浩特市| 四会市| 乌拉特前旗| 广河县| 高陵县| 白沙| 洛扎县| 奎屯市| 余江县| 甘孜县| 镇平县| 旬阳县| 祁连县| 渭源县|