在Red Hat Enterprise Linux 9上使用Docker快速安装并部署

简介: 通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。

在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ,可以显著简化消息队列系统的搭建过程。以下是详细步骤,包括必要的命令和配置文件示例。

步骤一:安装Docker

  1. 更新系统软件包

    sudo dnf update -y
    ​
    
  2. 安装Docker

    sudo dnf install -y dnf-plugins-core
    sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
    sudo dnf install -y docker-ce docker-ce-cli containerd.io
    ​
    
  3. 启动并设置Docker为开机自启动

    sudo systemctl start docker
    sudo systemctl enable docker
    ​
    
  4. 验证Docker安装

    sudo docker run hello-world
    ​
    

步骤二:拉取RocketMQ Docker镜像

  1. 从Docker Hub拉取RocketMQ镜像

    sudo docker pull apache/rocketmq:latest
    ​
    

步骤三:启动NameServer和Broker

  1. 启动NameServer

    sudo docker run -d --name rmqnamesrv -p 9876:9876 apache/rocketmq:latest sh mqnamesrv
    ​
    
  2. 启动Broker

    创建一个 broker.conf配置文件:

    brokerClusterName = DefaultCluster
    brokerName = broker-a
    brokerId = 0
    namesrvAddr = 127.0.0.1:9876
    autoCreateTopicEnable = true
    ​
    

    启动Broker容器:

    sudo docker run -d --name rmqbroker -p 10911:10911 -p 10909:10909 --link rmqnamesrv:namesrv -v $(pwd)/broker.conf:/opt/rocketmq-4.7.1/conf/broker.conf apache/rocketmq:latest sh mqbroker -c /opt/rocketmq-4.7.1/conf/broker.conf
    ​
    

步骤四:启动RocketMQ控制台(可选)

  1. 拉取RocketMQ控制台镜像

    sudo docker pull styletang/rocketmq-console-ng
    ​
    
  2. 启动RocketMQ控制台

    sudo docker run -d --name rmqconsole -p 8080:8080 --link rmqnamesrv:namesrv styletang/rocketmq-console-ng
    ​
    

完整示例代码

# 更新系统和安装Docker
sudo dnf update -y
sudo dnf install -y dnf-plugins-core
sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
sudo docker run hello-world

# 拉取RocketMQ镜像
sudo docker pull apache/rocketmq:latest

# 启动NameServer
sudo docker run -d --name rmqnamesrv -p 9876:9876 apache/rocketmq:latest sh mqnamesrv

# 创建broker.conf文件
echo "brokerClusterName=DefaultCluster
brokerName=broker-a
brokerId=0
namesrvAddr=127.0.0.1:9876
autoCreateTopicEnable=true" > broker.conf

# 启动Broker
sudo docker run -d --name rmqbroker -p 10911:10911 -p 10909:10909 --link rmqnamesrv:namesrv -v $(pwd)/broker.conf:/opt/rocketmq-4.7.1/conf/broker.conf apache/rocketmq:latest sh mqbroker -c /opt/rocketmq-4.7.1/conf/broker.conf

# 拉取并启动RocketMQ控制台(可选)
sudo docker pull styletang/rocketmq-console-ng
sudo docker run -d --name rmqconsole -p 8080:8080 --link rmqnamesrv:namesrv styletang/rocketmq-console-ng
​

分析说明表

步骤 说明 示例命令
更新系统软件包 更新系统中所有软件包 sudo dnf update -y
安装Docker 安装Docker及其依赖 sudo dnf install -y docker-ce docker-ce-cli containerd.io
启动并设置Docker为开机自启动 启动Docker服务并设置为开机自启动 sudo systemctl start docker sudo systemctl enable docker
验证Docker安装 运行Docker测试容器以验证安装是否成功 sudo docker run hello-world
拉取RocketMQ镜像 从Docker Hub拉取最新的RocketMQ镜像 sudo docker pull apache/rocketmq:latest
启动NameServer 启动RocketMQ的NameServer sudo docker run -d --name rmqnamesrv -p 9876:9876 apache/rocketmq:latest sh mqnamesrv
创建broker.conf文件 创建并配置RocketMQ Broker的配置文件 echo "brokerClusterName=DefaultCluster... > broker.conf
启动Broker 启动RocketMQ的Broker sudo docker run -d --name rmqbroker -p 10911:10911 -p 10909:10909 --link rmqnamesrv:namesrv -v $(pwd)/broker.conf:/opt/rocketmq-4.7.1/conf/broker.conf apache/rocketmq:latest sh mqbroker -c /opt/rocketmq-4.7.1/conf/broker.conf
拉取并启动RocketMQ控制台(可选) 拉取并启动RocketMQ控制台以便进行Web管理 sudo docker pull styletang/rocketmq-console-ng sudo docker run -d --name rmqconsole -p 8080:8080 --link rmqnamesrv:namesrv styletang/rocketmq-console-ng

结论

通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
28天前
|
人工智能 API 数据安全/隐私保护
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
NextChat 是一个可以在 GitHub 上一键免费部署的私人 ChatGPT 网页应用,支持 GPT3、GPT4 和 Gemini Pro 模型。该项目在 GitHub 上获得了 63.8k 的 star 数。部署简单,只需拉取 Docker 镜像并运行容器,设置 API Key 后即可使用。此外,NextChat 还提供了预设角色的面具功能,方便用户快速创建对话。
118 22
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
|
22天前
|
缓存 Linux Docker
【最新版正确姿势】Docker安装教程(简单几步即可完成)
之前的老版本Docker安装教程已经发生了变化,本文分享了Docker最新版安装教程,其他操作系统版本也可以参考官 方的其他安装版本文档。
684 2
【最新版正确姿势】Docker安装教程(简单几步即可完成)
|
1月前
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
378 11
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
24天前
|
人工智能 Java 关系型数据库
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
66 4
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
|
11天前
|
Java 应用服务中间件 Docker
将基于 Spring 的 WAR 应用程序部署到 Docker:详尽指南
将基于 Spring 的 WAR 应用程序部署到 Docker:详尽指南
19 2
|
17天前
|
Java Linux Docker
什么是 Docker?如何将 Spring Boot 应用程序部署到 Docker?
什么是 Docker?如何将 Spring Boot 应用程序部署到 Docker?
33 3
|
24天前
|
机器学习/深度学习 数据采集 Docker
Docker容器化实战:构建并部署一个简单的Web应用
Docker容器化实战:构建并部署一个简单的Web应用
|
29天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
29天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
55 1
|
21天前
|
持续交付 开发者 Docker
掌握Docker容器化技术,加速软件开发与部署
掌握Docker容器化技术,加速软件开发与部署
40 0