docker安装redis及问题处理
拉取镜像
docker pull redis:6.2.4
修改redis配置文件如下
redis.conf配置的文件地址,可直接在官网下载对应包,解压后可获取
注: protected-mode 是为了禁止公网访问redis cache,加强redis安全的。
# bind 172.17.0.3 protected-mode no port 6379
启动容器
docker run --net vm-bf --network-alias redis --name bf-redis -v /mnt/hgfs/docinner/code/redis.conf:/etc/redis/redis.conf -d redis:6.2.4 redis-server /etc/redis/redis.conf
上述采用的是通过docker network来实现的网络互联~
最初是准备直接启动redis,在容器外可以直接访问,这样就不会通过容器来关联,通用性更高些
在mac上直接通过启动容器就实现了,但在工作本windows的虚拟机上,怎么调试都不行
容器外网络一直不通,但在redis容器内是可以正常操作的。试了各种方案,改redis.config的配置,一直都未能成功。
大家如果有什么解决方案,欢迎在评论中留下高见。谢谢~
解决方案:
在run启动容器的时候,指定映射的端口(-p),避免默认使用本机6379端口,即可解决
docker run --net vm-bf --network-alias redis --name bf-redis --restart=on-failure:10 -v /mnt/hgfs/docinner/code/dockerfile/redis.conf:/etc/redis/redis.conf -p 16379:6379 -d wohaokun/redis:6.2.4 redis-server /etc/redis/redis.conf
or mac 执行
docker run --net vm-bf --network-alias redis --name bf-redis --restart=on-failure:10 -v /Users/wanghaokun/dev/material/docinner/code/dockerfile/redis.conf:/etc/redis/redis.conf -p 16379:6379 -d wohaokun/redis:6.2.4 redis-server /etc/redis/redis.conf