1、Redis部署
单机部署
#下载镜像:
docker pull redis:latest
#创建redis的相关存储目录
mkdir -p /opt/redis/conf
touch /opt/redis/conf/redis.conf
vim /opt/redis/conf/redis.conf
#开启密码验证(可选)
requirepass 123
#允许Redis外部连接,需要注释掉绑定的IP
#bind 127.0.0.1
#关闭保护模式(可选)
protected-mode no
#注释掉daemonize yes,或者配置成daemonize no。因为该配置和docker run中的-d参数冲突,会导致容器一直启动失败
daemonize no
#开启Redis数据持久化(可选)
appendonly yes
-------------dos2unix /opt/radis/conf/redis.conf-------------------------
运行起来
docker run -d -p 6379:6379 --name redis --privileged=true \
-v /opt/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /app/redis/data:/data redis:latest redis-server /etc/redis/redis.conf
--------------------------------------------------------------------------------------
安装redis
yum install epel-release
yum install redis
docker inspect e1bba0e22018
redis-cli -h 172.17.0.2 -a 123 -p 6379
测试数据
set 1 2
get 1
3主3从
docker pull redis:5.0.7
编辑运行多个Redis容器脚本文件
vim redis-cluster.sh
-------------------启动8001至8006合计6个redis容器-----------------------------------
for port in $(seq 8001 8006); \
do \
mkdir -p /mydata/redis/node-${port}/conf
touch /mydata/redis/node-${port}/conf/redis.conf
cat << EOF >/mydata/redis/node-${port}/conf/redis.conf
port ${port}
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 192.168.80.28
cluster-announce-port ${port}
cluster-announce-bus-port 1${port}
appendonly yes
EOF
docker run -p ${port}:${port} -p 1${port}:1${port} --name redis-${port} \
-v /mydata/redis/node-${port}/data:/data \
-v /mydata/redis/node-${port}/conf/redis.conf:/etc/redis/redis.conf \
-d redis:5.0.7 redis-server /etc/redis/redis.conf; \
done
-------------------------------------------------------------------------------------
cat redis-cluster.sh
启动脚本
[root@lyc-80-28 ~]# . ./redis-cluster.sh
登录redis容器
docker exec -it redis-8001 bash
创建redis-cluster
-----------------------
redis-cli --cluster \
create 192.168.80.28:8001 \
192.168.80.28:8002 \
192.168.80.28:8003 \
192.168.80.28:8004 \
192.168.80.28:8005 \
192.168.80.28:8006 \
--cluster-replicas 1
登录
redis-cli -h 192.168.80.28 -p 8001
8002测试数据
set 1 2
get 1
----------------------------
登录8004节点查看数据已同步复制
【注意】
只能从8001-8003这3个master节点选1个新建数据,然后查看8004-8006其中的一个slave节点核对同步复制的数据
2、RabbitMQ部署
拉取镜像
docker pull rabbitmq:management
启动容器
-------------------------------------------------------------------
docker run -d --name rabbitmq \
-p 5671:5671 \
-p 5672:5672 \
-p 4369:4369 \
-p 25672:25672 \
-p 15671:15671 \
-p 15672:15672 \
-v /opt/rabbitmq:/var/lib/rabbitmq rabbitmq:management
--------------------------------------------------------------------
端口说明:
4369,25672(发现&集群端口)
5672,5671(AMQP端口)
15672(web管理后台端口)【登录端口】
61613,61614(STOMP协议端口)
1883,8883(MQTT协议端口)
登录web
http://192.168.80.28:15672
用户名:guest
密码: guest