最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Docker部署Redis并配置持久化與密碼保護的詳細步驟

 更新時間:2025年03月10日 09:10:25   作者:碼上有潛  
本文將詳細介紹如何使用 Docker 部署 Redis,并通過 redis.conf 配置文件實現(xiàn)數(shù)據(jù)持久化和密碼保護,適合在生產(chǎn)環(huán)境中使用,文章通過代碼示例講解的非常詳細,需要的朋友可以參考下

1. 準備工作

1.1 安裝 Docker

確保已安裝 Docker。如果未安裝,請參考以下命令:

Ubuntu/Debian:

sudo apt-get update
sudo apt-get install docker.io

CentOS/Fedora:

sudo yum install docker

macOS/Windows:
下載并安裝 Docker Desktop

安裝完成后,啟動 Docker 服務(wù):

sudo systemctl start docker
sudo systemctl enable docker

2. 創(chuàng)建 Redis 目錄和配置文件

2.1 創(chuàng)建目錄

在 /home/middleware/redis 下創(chuàng)建 data 目錄用于存放 Redis 數(shù)據(jù),并創(chuàng)建 redis.conf 配置文件:

mkdir -p /home/middleware/redis/data
touch /home/middleware/redis/redis.conf

2.2 編輯配置文件

編輯 redis.conf 文件,添加以下內(nèi)容:

bind 0.0.0.0
port 6379
dir /data
dbfilename dump.rdb
# 設(shè)置 Redis 密碼
requirepass yourpassword  

# RDB 持久化配置

# 900 秒(15 分鐘)內(nèi)至少有 1 個鍵被修改時觸發(fā)保存
save 900 1     

# 300 秒(5 分鐘)內(nèi)至少有 10 個鍵被修改時觸發(fā)保存
save 300 10    

# 60 秒(1 分鐘)內(nèi)至少有 10000 個鍵被修改時觸發(fā)保存
save 60 10000  
  • bind 0.0.0.0:允許所有 IP 連接。
  • port 6379:Redis 服務(wù)端口。
  • dir /data:數(shù)據(jù)存儲目錄。
  • dbfilename dump.rdb:數(shù)據(jù)文件名。
  • requirepass yourpassword:設(shè)置 Redis 密碼(將 yourpassword 替換為你的密碼)。
  • save:配置 RDB 持久化規(guī)則(詳見下文解釋)。

2.3 save 指令詳解

save 指令用于配置 Redis 的 RDB 持久化策略。它的語法如下:

save <seconds> <changes>
  • <seconds>:時間間隔(秒)。
  • <changes>:在指定時間間隔內(nèi),如果數(shù)據(jù)發(fā)生了至少 <changes> 次修改,則觸發(fā)保存。

示例解釋

在配置文件中:

save 900 1
save 300 10
save 60 10000
  1. save 900 1

    • 如果 900 秒(15 分鐘) 內(nèi),至少有 1 個鍵 被修改,則觸發(fā)保存。
  2. save 300 10

    • 如果 300 秒(5 分鐘) 內(nèi),至少有 10 個鍵 被修改,則觸發(fā)保存。
  3. save 60 10000

    • 如果 60 秒(1 分鐘) 內(nèi),至少有 10000 個鍵 被修改,則觸發(fā)保存。

為什么需要多個 save 規(guī)則?

多個 save 規(guī)則可以平衡 數(shù)據(jù)安全性 和 性能

  • 頻繁保存(如 save 60 10000):確保數(shù)據(jù)丟失的風險最小化,但可能會影響性能,因為頻繁的磁盤寫入會增加 I/O 負載。
  • 較少保存(如 save 900 1):減少磁盤 I/O,但可能會增加數(shù)據(jù)丟失的風險。

通過組合多個規(guī)則,Redis 可以在不同場景下靈活地觸發(fā)數(shù)據(jù)保存。

3. 使用 Docker 運行 Redis

3.1 拉取 Redis 鏡像

從 Docker Hub 拉取 Redis 官方鏡像:

docker pull redis

3.2 啟動 Redis 容器

運行以下命令啟動 Redis 容器,并掛載配置文件和數(shù)據(jù)目錄:

docker run --name redis -d \
  -p 6379:6379 \
  -v /home/middleware/redis/data:/data \
  -v /home/middleware/redis/redis.conf:/usr/local/etc/redis/redis.conf \
  redis redis-server /usr/local/etc/redis/redis.conf
  • --name redis:容器命名為 redis。
  • -d:后臺運行容器。
  • -p 6379:6379:將主機的 6379 端口映射到容器的 6379 端口。
  • -v /home/middleware/redis/data:/data:掛載數(shù)據(jù)目錄。
  • -v /home/middleware/redis/redis.conf:/usr/local/etc/redis/redis.conf:掛載配置文件。
  • redis redis-server /usr/local/etc/redis/redis.conf:使用自定義配置文件啟動 Redis。

4. 驗證 Redis 部署

4.1 檢查容器狀態(tài)

運行以下命令,查看容器是否正常運行:

docker ps

4.2 連接 Redis

使用 redis-cli 連接 Redis,并驗證密碼:

docker exec -it redis redis-cli

在 Redis CLI 中執(zhí)行以下命令進行認證:

AUTH yourpassword

認證成功后,可以執(zhí)行 Redis 命令,例如:

SET mykey "Hello, Redis!"
GET mykey

4.3 驗證數(shù)據(jù)持久化

停止并重新啟動 Redis 容器:

docker stop redis
docker start redis

再次連接 Redis,檢查數(shù)據(jù)是否仍然存在:

docker exec -it redis redis-cli
AUTH yourpassword
GET mykey

5. 使用 Docker Compose(可選)

如果你更喜歡使用 Docker Compose 管理 Redis 容器,可以創(chuàng)建 docker-compose.yml 文件:

version: '3'
services:
  redis:
    image: redis
    container_name: redis
    ports:
      - "6379:6379"
    volumes:
      - /home/middleware/redis/data:/data
      - /home/middleware/redis/redis.conf:/usr/local/etc/redis/redis.conf
    command: redis-server /usr/local/etc/redis/redis.conf

然后運行以下命令啟動服務(wù):

docker-compose up -d

停止服務(wù):

docker-compose down

6. 目錄結(jié)構(gòu)

最終的 /home/middleware/redis 目錄結(jié)構(gòu)如下:

/home/middleware/redis/
├── data/             # Redis 持久化數(shù)據(jù)目錄
│   └── dump.rdb      # Redis 數(shù)據(jù)文件
└── redis.conf        # Redis 配置文件

7. 總結(jié)

通過以上步驟,你已經(jīng)成功使用 Docker 部署了 Redis,并通過 redis.conf 配置文件實現(xiàn)了數(shù)據(jù)持久化和密碼保護。本文還詳細解釋了 save 指令的作用和配置方法,幫助你根據(jù)業(yè)務(wù)需求靈活調(diào)整持久化策略。

以上就是使用Docker部署Redis并配置持久化與密碼保護的詳細步驟的詳細內(nèi)容,更多關(guān)于Docker部署Redis持久化與密碼保護的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 在Redis數(shù)據(jù)庫中實現(xiàn)分布式速率限制的方法

    在Redis數(shù)據(jù)庫中實現(xiàn)分布式速率限制的方法

    這篇文章主要介紹了在Redis數(shù)據(jù)庫中實現(xiàn)分布式速率限制的方法,文中展示了一個用Python編寫的應(yīng)用示例,需要的朋友可以參考下
    2015-06-06
  • Redis主從+哨兵集群部署詳解

    Redis主從+哨兵集群部署詳解

    本文介紹Redis哨兵模式,實現(xiàn)主從節(jié)點自動監(jiān)控與故障轉(zhuǎn)移,確保高可用,詳解部署主從及哨兵集群的配置與驗證流程,注意事項包括主機名、IP映射和腳本區(qū)分
    2025-10-10
  • Redis+aop實現(xiàn)接口防刷(冪等)的解決方案

    Redis+aop實現(xiàn)接口防刷(冪等)的解決方案

    在高并發(fā)場景下,可能會因為網(wǎng)絡(luò)或者服務(wù)器原因,造成延遲,同時就是有可能會有人用腳本大量訪問你的接口,造成資源崩潰,所以本文給大家介紹了Redis+aop實現(xiàn)接口防刷(冪等)的解決方案,需要的朋友可以參考下
    2024-03-03
  • Redis實現(xiàn)分布式鎖的實例講解

    Redis實現(xiàn)分布式鎖的實例講解

    在本篇文章里小編給大家整理了一篇關(guān)于Redis實現(xiàn)分布式鎖的實例講解內(nèi)容,有興趣的朋友們可以學習參考下。
    2021-12-12
  • 一文詳解如何停止/重啟/啟動Redis服務(wù)

    一文詳解如何停止/重啟/啟動Redis服務(wù)

    Redis是當前比較熱門的NOSQL系統(tǒng)之一,它是一個key-value存儲系統(tǒng),這篇文章主要給大家介紹了關(guān)于如何停止/重啟/啟動Redis服務(wù)的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-03-03
  • redis集群搭建過程(非常詳細,適合新手)

    redis集群搭建過程(非常詳細,適合新手)

    這篇文章主要介紹了redis集群搭建過程,Redis集群至少需要3個節(jié)點,因為投票容錯機制要求超過半數(shù)節(jié)點認為某個節(jié)點掛了該節(jié)點才是掛了,所以2個節(jié)點無法構(gòu)成集群,具體搭建過程跟隨小編一起看看吧
    2021-11-11
  • Redis五種數(shù)據(jù)結(jié)構(gòu)在JAVA中如何封裝使用

    Redis五種數(shù)據(jù)結(jié)構(gòu)在JAVA中如何封裝使用

    本篇博文就針對Redis的五種數(shù)據(jù)結(jié)構(gòu)以及如何在JAVA中封裝使用做一個簡單的介紹。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-11-11
  • redis如何實現(xiàn)保存對象

    redis如何實現(xiàn)保存對象

    這篇文章主要介紹了redis如何實現(xiàn)保存對象,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • redis內(nèi)部數(shù)據(jù)結(jié)構(gòu)之SDS簡單動態(tài)字符串詳解

    redis內(nèi)部數(shù)據(jù)結(jié)構(gòu)之SDS簡單動態(tài)字符串詳解

    SDS是Redis中實現(xiàn)的一種數(shù)據(jù)結(jié)構(gòu),用來存儲字符串,最近學習中正好學習到了這里,所以下面這篇文章主要給大家介紹了redis內(nèi)部數(shù)據(jù)結(jié)構(gòu)之SDS簡單動態(tài)字符串的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-11-11
  • Redis increment 函數(shù)處理并發(fā)序列號案例

    Redis increment 函數(shù)處理并發(fā)序列號案例

    這篇文章主要介紹了Redis increment 函數(shù)處理并發(fā)序列號案例,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-08-08

最新評論

台北市| 西畴县| 合肥市| 略阳县| 安陆市| 高淳县| 长沙市| 凉山| 铜梁县| 宁南县| 新丰县| 蓝山县| 柳州市| 桦南县| 莎车县| 秭归县| 河曲县| 泗洪县| 峨眉山市| 八宿县| 永年县| 静海县| 香港| 若尔盖县| 洛宁县| 伊金霍洛旗| 布拖县| 绩溪县| 平顺县| 资兴市| 巴彦县| 洪湖市| 河南省| 台江县| 会泽县| 望都县| 东阿县| 义马市| 阜城县| 天水市| 上林县|