怎么给docker的redis设置密码
设置密码方式1:启动容器时设置
docker run -itd --name redis-v1 -p 6379:6379 redis --requirepass 123456
说明:
--name
(启动容器的名称)
-p
宿主机映射端口:容器里的redis启动端口
--requirepass
启动密码
设置密码方式2:修改配置文件
1.进入redis的容器
docker exec -it 容器ID bash
我的是
docker exec -it redis-v1 bash
这里的redis-v1
是因为我的redis容器叫redis-v1
查看docker的容器列表,命令docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ce174ae6c172 mysql "docker-entrypoint.s…" 5 weeks ago Up 2 hours 0.0.0.0:3306->3306/tcp, 33060/tcp mysqltest
ed38373c491f redis "docker-entrypoint.s…" 5 weeks ago Up 13 minutes 0.0.0.0:6379->6379/tcp redis-v1
2.进入redis目录
cd /usr/local/bin
查看文件列表,使用命令ls
root@ed38373c491f:/usr/local/bin# ls
docker-entrypoint.sh gosu redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server
3.运行redis-cli命令
redis-cli
运行命令结果
root@ed38373c491f:/usr/local/bin# redis-cli
127.0.0.1:6379>
4.查看现有的redis密码
查看现有的redis密码命令
config get requirepass
命令结果
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""
5.设置redis密码
设置redis密码命令
config set requirepass 密码
我的
config set requirepass 123456
设置redis密码命令-结果
127.0.0.1:6379> config set requirepass 123456
OK
6.再次查看redis密码
查看现有的redis密码命令
config get requirepass
命令结果
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "123456"
错误
如出现:(error) NOAUTH Authentication required
这是因为redis设置了密码,我们需要使用密码来进行验证之后再来对redis客户端进行操作,否则我们没有操作redis缓存数据库的权限。
auth 密码
清空redis密码
将密码置为空字符串即可
config set requirepass ""