99久久人妻无码精品系列蜜桃|欧美一区二区三区乱码AⅤ|精品国语对白精品自拍视|在线视频免费观看一区|98av国产欧美日韩亚洲欧洲|人妻丰满熟妇av无码区二区三区|强乱中文字幕av一区乱码|亚洲日本一区二区

您的位置:首頁(yè) > 滾動(dòng) >

Docker 安裝Redis 無(wú)法使用配置文件設(shè)置密碼問(wèn)題

2023-08-27 23:01:55 來(lái)源:博客園

背景

最近開(kāi)發(fā)需要使用各種組件,如果都到開(kāi)發(fā)機(jī)上安裝,會(huì)占用電腦資源較多。所以使用docker容器來(lái)安裝這些組件。例如 redis 、mongodb、mysql、rabitmq、elasticsearch 等等。

遇到的問(wèn)題


(資料圖)

用edis官方鏡像啟動(dòng)容器后,發(fā)現(xiàn)沒(méi)有加載配置文件。

解決方案

1.redis鏡像拉下來(lái)后,通過(guò)docker run 命令創(chuàng)建并啟動(dòng)容器。不能使用docker desktop 工具運(yùn)行容器,那個(gè)工具貌似只能設(shè)置端口及容器名字,沒(méi)找到 掛載配置文件啟動(dòng)redis的設(shè)置。

2.通過(guò)docker desktop 或者 docker 命令 docker pull redis:latest 最新的redis 鏡像。

3. 通過(guò) 下面的命令 創(chuàng)建并運(yùn)行容器

docker run -p 6379:6379 --name myredis-d redis redis-server /etc/redis/redis.conf --appendonly yes

-p 映射redis 使用6379端口

--name 指定容器名字 為 myredis

-d 指定使用的鏡像名字 ,是用redis 鏡像創(chuàng)建容器,后面緊接的參數(shù) redis-server 是容器啟動(dòng)后,執(zhí)行redis-server 命令 并掛載 etc/redis/redis.conf 文件 。

-- appendonly yes 表示啟動(dòng)redis時(shí)打開(kāi)redis 持久化配置。

這讓創(chuàng)建容器,容器會(huì)啟動(dòng)失敗。

通過(guò)docker ps 查看當(dāng)前的容器,找到剛創(chuàng)建的容器,通過(guò) docker logs 容器id 查看容器的啟動(dòng)日志,或者通過(guò)docker desktop 工具點(diǎn)擊對(duì)應(yīng)的容器,然后點(diǎn)擊Logs選項(xiàng)卡,查看日志。

日志里會(huì)提示/etc/redis/redis.conf 文件不存在。

此時(shí)我們可以通過(guò) docker exec -it 【容器id】/bin/bash 命令進(jìn)入容器,容器內(nèi)也是一個(gè)liunx 系統(tǒng),可以通過(guò)liunx命令創(chuàng)建對(duì)應(yīng)的目錄和配置文件,并通過(guò)vi命令編輯文件,設(shè)置密碼。

或者通過(guò)Docker DeskTop 工具 進(jìn)入容器后點(diǎn)擊Files 就可以像在windows 下一樣,以文件夾的方式瀏覽容器內(nèi)的文件,

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

配置里編輯好要設(shè)置的密碼。文件上傳到容器內(nèi)后,點(diǎn)擊右上角的restart 重啟容器,容器內(nèi)的redis就會(huì)自動(dòng)加載配置文件。里面就指定了密碼。注意配置里的bind 127.0.0.1 配置需要注釋掉,

不然外部無(wú)法連接容器內(nèi)的redis。

重啟容器后,可以通過(guò) 進(jìn)入容器內(nèi)的redis

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

或者

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

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

進(jìn)入容器后,通過(guò) config get requirepass 命令獲取當(dāng)前配置的賬號(hào)密碼,如果指定密碼登錄了,會(huì)返回當(dāng)前的密碼。

如果通過(guò)第一個(gè)命令直接進(jìn)入,會(huì)提提示需要驗(yàn)證密碼,此時(shí)可以通過(guò)auth 【密碼】 命令驗(yàn)證redis的密碼。

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

之前在網(wǎng)上找了很多資料,大部分都是通過(guò) docker run 命令 加 -v 參數(shù) 掛載 主機(jī) 目錄及配置文件,這種方式我沒(méi)成功~不知道問(wèn)題出在哪里,最后啟動(dòng)的redis 都沒(méi)有應(yīng)用上配置文件,

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

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

docker run 命令來(lái)創(chuàng)建和啟動(dòng)容器。

關(guān)鍵詞:

[責(zé)任編輯:xwzkw]

相關(guān)閱讀

title="99久久人妻无码精品系列蜜桃|欧美一区二区三区乱码AⅤ|精品国语对白精品自拍视|在线视频免费观看一区|98av国产欧美日韩亚洲欧洲|人妻丰满熟妇av无码区二区三区|强乱中文字幕av一区乱码|亚洲日本一区二区|国产suv一区二区|欧美精品电影一区二区三区|免费无码毛片一区二区app|粉嫩的18在线观看极品精品">