码迷,mamicode.com
首页 > 其他好文 > 详细

[转发]docker 安装redis 并配置外网可以访问

时间:2021-01-11 10:44:43      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:end   使用   kill   自己   配置   rgb   没有   最新   article   

首先通过命令拉取一个最新的redis

可以通过 dockerHub去获取最新的Redis镜像,地址:

https://hub.docker.com/_/redis?tab=tags

 

拉取最新镜像

docker pull redis

 

拉取redis镜像完成后,随便找一个地方创建一个配置文件

#创建配置文件;
mkdir -p /data/redis/data 
chmod -R 777 /data/redis/data  #给予读写权限
chmod -R 777 /data/redis/      #给予读写权限
vim /data/redis/redis.conf #打开文本编辑器

#将以下内容复制进去
bind 0.0.0.0 #有了这个才能让外网访问
daemonize 
NOprotected-mode no
requirepass 我是密码123 #密码
port 2200 #设置端口 这里也可以不设置

#输入以上内容后 sec : wq 保存退出

 

开始运行docker run

运行语法如下: 

docker run -p 2200 :2200  --name redis1938    -v /data/redis/redis.conf:/etc/redis/redis.conf    -v /data/redis/data:/data  \ 
  -d redis redis-server   /etc/redis/redis.conf --appendonly yes

  

完成;

试错的过程思想:

当总是一直连接不上redis的时候( 在docker ps 中是正常运行,但是无法通过外部连接连接redis )

1. 通过find / -name redis.conf 查看配置文件的内容有没有被复制进去;

2. 发现没有;

3. 看自己写的 redis.conf文件 通过排除法排除参数内的内容;

3.1 去掉bind 尝试连接

3.2 去掉密码 尝试连接

4. 通过 docker  exec -it 容器ID redis-cli 进去

再使用2步骤的排除法;

连接进去后首先新增redis.conf 中的密码;

后get a

发现提示 密码有误!(ok 到这里就可以确定 redis.conf 文件是被加载进docker里面了)

看redis-cli 里面的命令符: 发现是  127.0.0.1:6379

推测可能是 redis。conf 中需要配置 port

docker kill redis的ID

docker rm redis的ID

重新修改/data/redis//redis.conf

?添加: port 2000保存退出

重新运行docker run

成功连接 ~!

 

转发自: https://www.lesg.cn/Article-56460.html

 

[转发]docker 安装redis 并配置外网可以访问

标签:end   使用   kill   自己   配置   rgb   没有   最新   article   

原文地址:https://www.cnblogs.com/aaronwus/p/14248717.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!