Docker搭建Redis5.0並掛載數據

  • 2021 年 7 月 21 日
  • 筆記

記錄 Docker 搭建 Redis5.0 並掛載數據過程,搭建參考自 Docker Hub

系列文章歡迎訪問://www.itwxe.com/posts/9e76db89/

一、簡單掛載持久化數據

docker run -d -p 6379:6379 --name redis \
-v /itwxe/dockerData/redis/data:/data \
redis:5.0.8 redis-server --appendonly yes

這樣僅僅是掛載了數據,Redis 沒有密碼等配置,任何人都可以連接,如果是伺服器在公網那麼極度不安全。

於是按照慣例進入容器查找 redis 的配置文件放在哪裡,然後配置好掛載即可,結果發現容器內並沒有 redis.conf 文件。

Docker Hub 中提到,需要自定義 redis.conf 使用 DockerFile 構建鏡像。

docker使用自定義配置那件構建redis鏡像

二、通過DockerFile構建鏡像,指定配置文件啟動

1、先去 Redis官網 下個和鏡像版本一致的版本,我的版本是5.0.8,然後解壓文件,將 redis.conf 上傳到伺服器。

2、修改 redis.conf 配置,主要配置如下,根據自己需求修改。

# 修改後台啟動, 默認為daemonize no,docker啟動默認即可,後台啟動會導致容器退出
daemonize no

# 客戶端閑置多長時間後斷開連接, 默認為0關閉此功能                               
timeout 0

# 設置密碼, 默認被注釋, 取消注釋修改為自定義密碼(我的是123456)
requirepass 123456

# 監聽ip, 允許訪問的ip, 默認為127.0.0.1, 修改為0.0.0.0(允許所有伺服器ip訪問)或者注釋掉
bind 0.0.0.0

# 指定監聽埠, 默認為6379, 此處我保持默認
port 6379

# 是否開啟AOF持久化,默認為no
appendonly yes

# 修改AOF及RBD存放路徑, 默認為./, 修改為/data
dir /data

# 修改log存放路徑, 默認為"", 修改為"/data/redis_6379.log"
logfile "/data/redis_6379.log"

3、創建 Dockerfile 文件,添加內容,不知道怎麼使用 Dockerfile 怎麼使用的可以看看 DockerFile構建鏡像

FROM redis:5.0.8
COPY redis.conf /usr/local/etc/redis/redis.conf
CMD ["redis-server", "/usr/local/etc/redis/redis.conf"]

4、構建鏡像。

docker build -t itwxe/redis:5.0.8 .

構建自定義配置redis鏡像

5、啟動構建的鏡像,並掛載數據。

docker run -d -p 6379:6379 --name redis \
-v /itwxe/dockerData/redis/data:/data \
itwxe/redis:5.0.8

可以看到數據正常掛載了。

自定義redis鏡像自動

同時可以測試下密碼也可以正常連接。

自定義redis容器連接

都讀到這裡了,來個 點贊、評論、關注、收藏 吧!

文章作者:IT王小二
首發地址://www.itwxe.com/posts/7fbf91c/
版權聲明:文章內容遵循 署名-非商業性使用-禁止演繹 4.0 國際 進行許可,除特殊聲明外皆為原創,轉載請在文章頁面明顯位置給出作者與原文鏈接。