Docker创建RocketMQ和RocketMQ控制台
2023-12-14 13:44:01
安装RocketMQ
安装最新版本的RocketMQ(名为RocketMQ)在Docker上的过程大致可以分为以下步骤:
1. 准备工作
确保你的系统中已经安装了Docker。可以通过运行 docker --version
来验证Docker是否已安装及其版本信息。
2. 拉取RocketMQ镜像
使用Docker命令从Docker Hub上拉取最新的RocketMQ镜像。可以通过执行以下命令来完成:
docker pull rocketmqinc/rocketmq
这将会下载RocketMQ的最新版本。
3. 启动NameServer
RocketMQ需要一个NameServer。使用以下命令启动NameServer的容器:
docker run -d -p 9876:9876 --name RocketMQServer rocketmqinc/rocketmq sh mqnamesrv
这个命令将会启动一个NameServer,并将容器内的9876端口映射到宿主机的9876端口。
4. 启动Broker
在NameServer运行后,接下来需要启动Broker。可以使用以下命令:
docker run -d -p 10911:10911 -p 10909:10909 --name rmqbroker --link RocketMQServer:namesrv -e "NAMESRV_ADDR=namesrv:9876" rocketmqinc/rocketmq sh mqbroker
这个命令启动了一个Broker,并将10911和10909端口映射到宿主机,同时设置了NameServer的地址。
5. 验证安装
安装完成后,可以通过执行一些基本的RocketMQ命令来验证是否安装成功。比如,可以进入到Broker容器中,然后使用RocketMQ提供的命令行工具发送和接收消息。
注意事项
- 确保宿主机的端口不被其他服务占用。
- 根据需要调整端口映射和其他配置。
- 以上命令适用于测试和开发环境,生产环境可能需要更复杂的配置。
通过以上步骤,你应该可以在Docker上成功安装并运行RocketMQ。
安装控制台
1. 拉取RocketMQ控制台镜像
首先,从Docker Hub拉取RocketMQ控制台的镜像。使用以下命令:
docker pull styletang/rocketmq-console-ng
这将下载RocketMQ控制台的最新Docker镜像。
2. 启动RocketMQ控制台
在拉取镜像之后,使用以下命令启动RocketMQ控制台的Docker容器:
docker run -d -e "JAVA_OPTS=-Drocketmq.namesrv.addr=RocketMQServer:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8080:8080 --link RocketMQServer:namesrv --name rocketmq-console styletang/rocketmq-console-ng
在这个命令中:
-d
参数表示在后台运行容器。-e "JAVA_OPTS=-Drocketmq.namesrv.addr=RocketMQServer:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"
设置了Java的环境变量,其中指定了NameServer的地址。由于你的NameServer容器名为RocketMQServer
,这里使用了这个名字。-p 8080:8080
将容器的8080端口映射到宿主机的8080端口,以便能够从外部访问控制台。--link RocketMQServer:namesrv
链接到你的RocketMQ NameServer容器。--name rocketmq-console
给控制台容器设置一个名称,以便于管理。styletang/rocketmq-console-ng
是控制台镜像的名称。
3. 访问控制台
控制台容器启动后,你可以通过浏览器访问 http://localhost:8080
来打开RocketMQ控制台。
注意事项
- 请确保端口8080在你的机器上没有被其他应用占用。
- 如果你的Docker宿主机不是本地机器,那么你需要用宿主机的IP地址替换
localhost
来访问控制台。 - 控制台只是一个监控和管理界面,确保你的RocketMQ服务器和Broker已经正确运行。
按照这些步骤,你应该能够成功在Docker上安装并运行RocketMQ控制台。
文章来源:https://blog.csdn.net/qq_45153375/article/details/134856939
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!