MAC M1国产化服务器小本本跑DOCKER ARM64位镜像 rocketmq
docker 部署到MAC环境
(注意:下面所用到的镜像均为arm64位,X86均不适用)
1.拉取ARM64位镜像源并跑ocketmq-nameserver
docker run -d -p 9876:9876 -p 9876: -v `pwd`/Users/guzepeng/data/namesrv/logs:/root/logs -v `pwd`/Users/guzepeng/data/namesrv/store:/root/store --name rmqnamesrv toyangdon/rocketmq-nameserver:4.5.0-alpine-operator-0.3.0 sh mqnamesrv
2.拉取ARM64位镜像源并跑broker
docker run -d -p 10911:10911 -p 10909:10909 -v `pwd`/Users/guzepeng/data/namesrv/logs:/root/logs -v `pwd`/Users/guzepeng/data/namesrv/store:/root/store --name rmqbroker --link rmqnamesrv -e "NAMESRV_ADDR=namesrv:9876" toyangdon/rocketmq-broker:4.5.0-alpine-operator-0.3.0 sh mqbroker -c ../conf/broker.conf
进入容器(exec it)
docker exec -it broker镜像ID /bin/sh
vi ../conf/broker.conf(这里注意,有的docker的不自带vim的,然后用apt-get安装也会报错会提示没有apt-get,因为ARM64的Docker真的很坑,用vi就行)
进入vi后在broker.conf内容最后追加以下下内容
namesrvAddr=192.168.31.28:9876(本机的局域网IP,尝试其他的只会死路一条,比如Docker虚拟机外的SpringBoot注册127.0.0.1报找不到broker)
brokerIP1=192.168.31.28(本机的局域网IP,127.0.0.1 rocketmq-console 会不可用)
autoCreateTopicEnable=true(是否允许 Broker 自动创建Topic,建议线下开启,线上关闭 !!!这里仔细看是false,false,false)
autoCreateSubscriptionGroup=true(是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭)
3.拉取ARM64位镜像源并跑console
docker run -d --restart=always --name rmqadmin -e "JAVA_OPTS=-Drocketmq.namesrv.addr=172.17.0.4:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 9999:8080 candice0630/rocketmq-console-ng:2.0
Drocketmq.namesrv.addr赋不赋值都无所谓,可以进视化控制台修改
人实在懒得写文档,但是看到没有人发表过ARM64 MAC本本的部署文章,所以还是献丑发表一下小结。
Arm64坑虽然很多,但调通还是感觉很不错的哦
