要点一
docker 容器间通过下面命令通信:
docker network create redis-net
容器启动式,添加参数:–net redis-net
要点二
redis 通过另外一个端口进行有关redis cluster 模式的通信, 比如 6379 用于同redis-cli 通信, 16379 用于redis cluster.
坑1
redis 容器启动命令: 使用绝对路径命令, /user/local/bin/redis-serve , 不然因为文件权限的问题报错,是一个bug, 原因参考:redis 启动错误
如下:
for port in `seq 7000 7005`; do
docker run -d -ti -p ${port}:${port} -p 1${port}:1${port} -v /root/redis-cluster2/${port}/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /root/redis-cluster2/${port}/data:/data --restart always --name redis-${port} --net redis-net --sysctl net.core.somaxconn=1024 redis /user/local/bin/redis-server /usr/local/etc/redis/redis.conf;
done
参考: