docker安装redis

   

  摸了两天坑,基本摸明白了,docker使用起来很方面,安装redis分分钟的事情。

  服务器上预先安装好docker环境,这个不多说。

  先搜索一下docker里的reids镜像库:

docker search redis 

  出来的列表如图: 

 

  我们拉取第一个镜像文件即可:

docker pull redis 

  然后看一下我们当前拉取的镜像:

docker images 

  

  可以看到里面已经有一个关于redis的镜像了。

  接着,我们根据这个镜像去运行出一个容器即可:

docker run --name redis2 -p 6377:6379  -d redis 

  redis2是我们自定义容器名,我们将容器内的6379端口映射到外部主机的6377上了,经测试无需密码即可链接成功:

    

  不过这样是不安全的,一般我们最好设置一个默认密码比较好。刚刚穿创建的redis容器不用动,我们重新创建一个名为myredis的容器,执行以下命令:

docker run -d --name myredis -p 6376:6379 redis --requirepass "123456"

  执行完以后docker ps可以看到这个创建好的容器,再去通过redis客户端连接6376这个端口的redis服务器时,就需要输入密码才能成功了。

  

  当然当然,这样虽然方便,但是是不灵活的,docker创建redis容器默认是没有reids.conf配置文件的,我们如果要自己修改密码就不好处理了,所以需要自己整一个配置文件,并挂载到相应的目录下。

  https://redis.io/topics/config/ 这个地址可以下载redis的配置文件,我下载的是3.2版本的。

  下载下来以后修改几个地方:

  daemonize no#用守护线程的方式启动 (需要注意,如果是yes,redis是创建后会连不上,这个是个大坑,尤其要注意一下)

  requirepass yourpassword#给redis设置密码

  bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问

   appendonly yes#redis持久化

  修改完这四个地方以后,我们新建一下目录,root文件夹下新建一个redis文件夹,里面再放一个data文件夹和下载并修改好的redis.conf文件,如图:

  

  这个目录自己建就行,打开ftp是为了直观,直接命令行mkdir一样。

  然后我们要执行的、创建redis容器的命令就不一样啦:

docker run -p 6378:6379 --name redis -v /root/redis/redis.conf:/etc/redis/redis.conf  -v /root/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

  -v是挂载目录的意思,格式都是统一的,磁盘路径:容器路径,后面的redis-server /etc/redis/redis.conf表示以配置文件的方式启动redis,appendonly yes 表示开启持久化。

  以上,就是整个docker部署单机redis的教程啦~ 操作并不复杂,就是有些小坑需要注意。

  

原文地址:https://www.cnblogs.com/sunshine-wy/p/10980128.html