Docker 安裝Redis 無法使用配置文件設置密碼問題及解決方法

最近開發需要使用各種組件,如果都到開發機上安裝,會占用電腦資源較多。所以使用docker容器來安裝這些組件。例如 redis 、mongodb、mysql、rabitmq、elasticsearch 等等。

遇到的問題

用edis官方鏡像啟動容器后,發現沒有加載配置文件。文章源自四五設計網-http://www.wasochina.com/49492.html

解決方案

1.redis鏡像拉下來后,通過docker run 命令創建并啟動容器。不能使用docker desktop 工具運行容器,那個工具貌似只能設置端口及容器名字,沒找到 掛載配置文件啟動redis的設置。文章源自四五設計網-http://www.wasochina.com/49492.html

2.通過docker desktop 或者 docker 命令? docker pull redis:latest 最新的redis 鏡像。文章源自四五設計網-http://www.wasochina.com/49492.html

3. 通過 下面的命令 創建并運行容器文章源自四五設計網-http://www.wasochina.com/49492.html

docker run -p 6379:6379 --name myredis?-d redis redis-server /etc/redis/redis.conf --appendonly yes文章源自四五設計網-http://www.wasochina.com/49492.html

-p? 映射redis 使用6379端口文章源自四五設計網-http://www.wasochina.com/49492.html

--name 指定容器名字 為 myredis文章源自四五設計網-http://www.wasochina.com/49492.html

-d 指定使用的鏡像名字 ,是用redis 鏡像創建容器,后面緊接的參數 redis-server 是容器啟動后,執行redis-server 命令 并掛載 etc/redis/redis.conf 文件 。文章源自四五設計網-http://www.wasochina.com/49492.html

-- appendonly yes 表示啟動redis時打開redis 持久化配置。文章源自四五設計網-http://www.wasochina.com/49492.html

這讓創建容器,容器會啟動失敗。文章源自四五設計網-http://www.wasochina.com/49492.html

通過docker ps 查看當前的容器,找到剛創建的容器,通過 docker logs 容器id? 查看容器的啟動日志,或者通過docker desktop 工具點擊對應的容器,然后點擊Logs選項卡,查看日志。

日志里會提示?/etc/redis/redis.conf? 文件不存在。

此時我們可以通過 docker exec -it 【容器id】/bin/bash 命令進入容器,容器內也是一個liunx 系統,可以通過liunx命令創建對應的目錄和配置文件,并通過vi命令編輯文件,設置密碼。

或者通過Docker DeskTop 工具 進入容器后點擊Files 就可以像在windows 下一樣,以文件夾的方式瀏覽容器內的文件,

可以找到對應的目錄,將本地的文件上傳上去(注意只能上傳文件夾,可以到本地建個redis 目錄,里面包含redis.conf 文件配置,然后將目錄上傳到對應的文件夾)。見圖:

Docker 安裝Redis 無法使用配置文件設置密碼問題及解決方法-1

配置里編輯好要設置的密碼。文件上傳到容器內后,點擊右上角的restart 重啟容器,容器內的redis就會自動加載配置文件。里面就指定了密碼。注意配置里的bind 127.0.0.1 配置需要注釋掉,

不然外部無法連接容器內的redis。

重啟容器后,可以通過 進入容器內的redis

docker exec -it [容器id]? redis-cli

或者

docker exec -it [容器id] /bin/bash

redis-cli -h 127.0.0.1 -p 6379 -a 123456

進入容器后,通過 config get requirepass 命令獲取當前配置的賬號密碼,如果指定密碼登錄了,會返回當前的密碼。

如果通過第一個命令直接進入,會提提示需要驗證密碼,此時可以通過auth 【密碼】 命令驗證redis的密碼。

也可以重新修改密碼 config set requirepass [新密碼] 修改后保存回 配置文件? config rewrite
到這里 docker redis 通過配置啟動,修改密碼等操作已完成。

之前在網上找了很多資料,大部分都是通過 docker run 命令 加? -v 參數 掛載 主機 目錄及配置文件,這種方式我沒成功~不知道問題出在哪里,最后啟動的redis 都沒有應用上配置文件,

且查看容器內映射的配置文件,redis.conf 它顯示的是目錄,不是文件...

如果通過Docker Desktop 工具的鏡像管理直接啟動容器,不能指定的容器內redis啟動時掛載 redis.conf 配置。Environment variables 參數設置也不起作用。?docker desktop 是方便,但是需要額外設置一些參數,還是需要通過

docker run 命令來創建和啟動容器。

Docker 安裝Redis 無法使用配置文件設置密碼問題及解決方法-2

到此這篇關于Docker?安裝Redis?無法使用配置文件設置密碼問題的文章就介紹到這了

繼續閱讀
我的微信
微信掃一掃
weinxin
我的微信
惠生活福利社
微信掃一掃
weinxin
我的公眾號
 
  • 本文由 四五設計網小助手 發表于 2024年7月2日10:21:30
  • 轉載請務必保留本文鏈接:http://www.wasochina.com/49492.html

發表評論

匿名網友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

拖動滑塊以完成驗證