直接开干,玩的就是真实(关于rocketMQ的详细介绍不多说,自行补习,本篇文章只说明如何安装哟),本列子在/home下面进行的呢,请自行对应自行要创建目录的路径哟!!!
1、直接拉取最新rocket镜像
docker pull rocketmqinc/rocketmq
2、创建挂载的文件夹(nameserver和broker的logs和store),创建的目录在/home下
mkdir /home/rocketmq && cd $_ && mkdir -p nameserver broker && cd /home/rocketmq/nameserver && mkdir -p logs store && cd /home/rocketmq/broker && mkdir -p logs store
3、创建broker.conf,并设置对应的内容
touch /home/rocketmq/broker/broker.conf
3-1、使用vi或vim进行设置broker.conf的内容
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
brokerIP1 = 服务器的外网ip(如果使用内网会导致项目开发测试阶段无法正常链接)
4、创建并启动rocketmq的nameserver容器(注意:挂载的路径是上面创建的,如果您的不一样,请修改哟,-v后面的,开启9876的端口)
docker run -d --restart=always --name rmqnamesrv --privileged=true -p 9876:9876 -v /home/rocketmq/nameserver/logs:/root/logs -v /home/rocketmq/nameserver/store:/root/store -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq sh mqnamesrv
5、创建并启动rocketmq的broker容器(注意:同样的要注意挂载的宿主机路径)
docker run -d --restart=always --name rmqbroker --link rmqnamesrv:namesrv -p 10911:10911 -p 10909:10909 --privileged=true -v /home/rocketmq/broker/logs:/root/logs -v /home/rocketmq/broker/store:/root/store -v /home/rocketmq/broker/broker.conf:/opt/docker/rocketmq/broker.conf -e "NAMESRV_ADDR=127.0.0.1:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq sh mqbroker -c /opt/docker/rocketmq/broker.conf
6、拉取rocketmq-console(可视化控制)
docker pull pangliang/rocketmq-console-ng
7、创建并启动console容器(注意:修改命令里面的内网ip地址为您自己的)
docker run -d --restart=always --name rmqadmin -e "JAVA_OPTS=-Drocketmq.namesrv.addr=内网ip:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8080:8080 pangliang/rocketmq-console-ng
8、打工告成,检查对应启动容器
docker ps
全篇提醒:要开启对应端口9876和8080,有些服务器不一样的叫安全组,有些叫防火墙等等,自行查资料哟,最后外网ip:8080即可访问了