docker安装redis

1. 拉取镜像

docker pull redis

2. 创建挂在目录

mkdir -p /home/redis/data

3. 准备redis配置文件

#在/home/redis下存放redis.conf文件,配置文件可从官网下载。

#redis.conf需要改动四个配置

##daemonize no#用守护线程的方式启动

##requirepass yourpassword#给redis设置密码

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

##appendonly yes#redis持久化

4. 启动redis

docker run -d -v /home/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6379:6379 --name redis --privileged=true -v /home/redis/data:/data redis redis-server /usr/local/etc/redis/redis.conf

#命令说明:

##--name redis : 指定容器名称,这个最好加上,不然在看docker进程的时候会很尴尬。

##-p 6379:6379 : 端口映射,默认redis启动的是6379,至于外部端口,随便玩吧,不冲突就行。

##-v /home/redis/redis.conf:/usr/local/etc/redis/redis.conf : 将主机中当前目录下的redis.conf配置文件映射。

##-v /home/redis/data:/data -d redis : 将主机中当前目录下的data挂载到容器的/data

##--redis-server --appendonly yes :在容器执行redis-server启动命令,并打开redis持久化配置(如果redis.conf已改,这段可取消)

##注意事项:

###如果不需要指定配置

####-v /home/redis/redis.conf:/usr/local/etc/redis/redis.conf 可以不用 ,

####redis-server 后面的那段 /usr/local/etc/redis/redis.conf 也可以不用。

5. 如果报错Error response from daemon: driver failed programming external connectivity on endpoint redis

重启docker===>>>systemctl restart docker

6. 如果没报错,可能就正常启动了。测试

#6.1 直接连接到redis容器中

docker inspect redis | grep IP ---先查询到myredis容器的ip地址。

7. 防火墙设置

#添加(--permanent永久生效,没有此参数重启后失效)

firewall-cmd --zone=public --add-port=6379/tcp --permanent

#重新载入

firewall-cmd --reload

#查看

firewall-cmd --list-ports

8. 测试链接

docker exec -it 8e05d6beb5cf redis-cli

#查看redis里面有没有数据,命令 keys *

#认证 auth "password"

#添加数据 set mykey "tom"

#读取数据 get mykey

你可能感兴趣的:(docker安装redis)