- rabbitMQ安装
1、进入docker hub镜像仓库地址:https://hub.docker.com/
2、搜索rocketmq,进入官方的镜像,可以看到以下几种类型的镜像;我们选择带有“mangement”的版本(包含web管理页面);
3、拉取镜像:
docker pull rocketmqinc/rocketmq:4.4.0
4、安装nameServ
docker images 查看所有镜像
mkdir -p /usr/mpsp/0_dockerData/rocketMQ/rmqNameSrv/logs
mkdir -p /usr/mpsp/0_dockerData/rocketMQ/rmqNameSrv/store
docker run -d --name rmqNameSrv --restart=always -p 9876:9876 -v /usr/mpsp/0_dockerData/rocketMQ/rmqNameSrv/logs:/root/logs -v /usr/mpsp/0_dockerData/rocketMQ/rmqNameSrv/store:/root/store -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq:4.4.0 sh mqnamesrv
说明:
-d 后台运行容器;
--name 指定容器名;
-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);
-v 映射目录或文件;
--hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)
启动nameServ: sh mqnamesrv
5、安装broker
mkdir -p /usr/mpsp/0_dockerData/rocketMQ/rmqBroker/logs
mkdir -p /usr/mpsp/0_dockerData/rocketMQ/rmqBroker/store
新建broker.conf文件:
cd /usr/mpsp/0_dockerData/rocketMQ/rmqBroker/
vi broker.conf
brokerClusterName = DefaultCluster brokerName = broker-a brokerId = 0 deleteWhen = 04 fileReservedTime = 48 brokerRole = ASYNC_MASTER flushDiskType = ASYNC_FLUSH brokerIP1 = {本地外网 IP}
chmod 777 broker.conf
启动broker:
docker run -d --name rmqBroker --restart=always -p 10911:10911 -p 10909:10909 -v /usr/mpsp/0_dockerData/rocketMQ/rmqBroker/logs:/root/logs -v /usr/mpsp/0_dockerData/rocketMQ/rmqBroker/store:/root/store -v /usr/mpsp/0_dockerData/rocketMQ/rmqBroker/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf --link rmqNameSrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq:4.4.0 sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
使用配置启动broker: sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
5、安装控制台
docker pull pangliang/rocketmq-console-ng
docker run -d --name rmqConsole --restart=always -p 8770:8080 -e "JAVA_OPTS=-Drocketmq.namesrv.addr=10.10.55.47:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -t pangliang/rocketmq-console-ng
docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr={本地外网 IP}:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8080:8080 -t pangliang/rocketmq-console-ng