Docker部署RabbitMQ镜像的保姆级教程

 更新时间:2024年12月23日 11:44:08   作者:大饼酥  
RabbitMQ 的镜像队列集群(Mirrored Queues Cluster)是实现高可用性的一种模式,它通过在集群中的多个节点之间复制队列,确保消息在集群的某些节点宕机时不会丢失,本文介绍了Docker部署RabbitMQ镜像的保姆级教程,需要的朋友可以参考下

1、创建挂载目录

# 创建宿主机rabbitMQ挂载目录
sudo mkdir -p /data/docker/rabbitmq/log
 
# 修改log目录权限
sudo chmod 777 /data/docker/rabbitmq/log

2、运行RabbitMQ容器

# 拉取镜像
sudo docker pull rabbitmq:4.0.5
 
# 运行容器
sudo docker run --privileged=true --net=bridge \
-d --name=rabbitmq \
-v /data/docker/rabbitmq/data:/var/lib/rabbitmq \
-v /data/docker/rabbitmq/config:/etc/rabbitmq \
-v /data/docker/rabbitmq/log:/var/log/rabbitmq \
-p 15672:15672 -p 5672:5672 \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin@123 \
rabbitmq:4.0.5

参数解析如下:

参数参数说明
docker run运行 Docker 容器
-d容器将在后台运行,而不是占用当前的终端会话
--privileged=trueDocker会赋予容器几乎与宿主机相同的权限
--net=bridge网络模式配置,默认是bridge,bridge表示使用容器内部配置网络
--name rabbitmq给容器命名为 rabbitmq,以便于管理和引用该容器
-p 15672:15672映射 RabbitMQ 管理页面端口
-p 5672:5672映射 RabbitMQ 消息接收端口
-e RABBITMQ_DEFAULT_USER=admin指定默认的 RabbitMQ 用户名为admin
-e RABBITMQ_DEFAULT_PASS=admin@123 指定默认的 RabbitMQ 密码为admin@123
-v /data/docker/rabbitmq/data:/var/lib/rabbitmq将主机目录挂载到容器内,用于数据持久化
-v /data/docker/rabbitmq/config:/etc/rabbitmq将主机目录挂载到容器内,用于配置文件持久化
-v /data/docker/rabbitmq/log:/var/log/rabbitmq将主机目录挂载到容器内,用于日志文件持久化

容器运行参数详解参考:Docker容器运行常用参数详解_docker_脚本之家

3、Compose运行RabbitMQ容器

创建docker-compose.yml文件

sudo touch /data/docker/rabbitmq/docker-compose.yml

文件内容如下:

version: '3'
 
services:
  rabbitmq:
    image: rabbitmq:4.0.5
    container_name: rabbitmq
    ports:
      # 管理页面端口
      - "15672:15672"
      # 消息接收端口
      - "5672:5672"
    environment:
      # 默认的用户名密码
      RABBITMQ_DEFAULT_USER: admin
      RABBITMQ_DEFAULT_PASS: admin@123
    volumes:
      - /data/docker/rabbitmq/data:/var/lib/rabbitmq
      - /data/docker/rabbitmq/config:/etc/rabbitmq
      - /data/docker/rabbitmq/log:/var/log/rabbitmq
    privileged: true
    network_mode: "bridge"

运行容器

#-f:调用文件,-d:开启守护进程
sudo docker compose -f /data/docker/rabbitmq/docker-compose.yml up -d

4、开启界面插件

进入rabbitMQ容器的控制台,运行以下命令开启界面插件,

rabbitmq-plugins enable rabbitmq_management

5、查看RabbitMQ运行状态

浏览器访问: http://127.0.0.1:15672/,查看rabbitMQ登录页面

6、常见问题处理

问题描述:运行rabbitMQ容器启动失败,报"failed to open log file at '/var/log/rabbitmq/rabbit@f1af52c33ddc.log', reason: permission denied"写入日志文件权限被拒绝。

解决方案:修改宿主机挂载目录/data/docker/rabbitmq/log的权限

sudo chmod 777 /data/docker/rabbitmq/log

到此这篇关于Docker部署RabbitMQ镜像的保姆级教程的文章就介绍到这了,更多相关Docker部署RabbitMQ镜像内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 在Ubuntu上使用Grafana监控Docker的方法

    在Ubuntu上使用Grafana监控Docker的方法

    如今越来越多的公司开始使用Docker,一谈起Docker总是会跟着让人联想到轻量这个词,甚至会有一种通过Docker启动一个服务会节省很多资源的错觉。然而Docker的「轻」也只是相对于传统虚拟机而已。Docker如何监控呢?本文就给大家介绍在Ubuntu上如何使用Grafana监控Docker。
    2016-12-12
  • 使用Docker部署IntelliJ IDEA(linuxserver/intellij-idea)的完整指南

    使用Docker部署IntelliJ IDEA(linuxserver/intellij-idea)的完整指南

    在服务器或无界面 Linux 环境中使用 IntelliJ IDEA 一直是个痛点,借助 Docker + linuxserver/intellij-idea 镜像,我们可以非常方便地通过浏览器远程使用 IDEA,下面我们就来看看详细部署指南吧
    2025-12-12
  • 一些常见的精简Docker file规则总结

    一些常见的精简Docker file规则总结

    这篇文章主要介绍了一些常见的精简Docker file规则的相关资料,这些精简规则有助于优化Dockerfile,生成更高效、简洁的镜像,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-11-11
  • 清理docker磁盘空间的方法总结(附详细讲解)

    清理docker磁盘空间的方法总结(附详细讲解)

    docker 镜像特别容易占空间,稍微不注意可能磁盘爆满,所以本文给大家详细介绍了如何清理 docker 磁盘空间,并通过代码示例给大家讲解的非常详细,需要的朋友可以参考下
    2024-02-02
  • 如何使用docker compose安装gitlab

    如何使用docker compose安装gitlab

    使用Docker Compose安装GitLab是一个相对简单的过程,但需要按照一定的步骤来确保一切设置正确,这篇文章主要介绍了使用docker compose安装gitlab,需要的朋友可以参考下
    2024-12-12
  • Linux中使用Docker构建Nginx容器的详细攻略

    Linux中使用Docker构建Nginx容器的详细攻略

    Nginx是一款广泛使用的高性能 Web 服务器和反向代理服务器,适用于各种场景,如静态文件服务、负载均衡和 API 网关等,在本教程中,我们将详细介绍如何在 Docker 中构建并运行一个 Nginx 容器,帮助开发者快速搭建和管理 Nginx 服务,感兴趣的朋友跟随小编一起看看吧
    2025-12-12
  • Docker入门教程之本地打包docker镜像教程

    Docker入门教程之本地打包docker镜像教程

    Docker镜像是一个特殊的文件系统,既提供了运行时所需的程序、库和资源,还提供了相应的配置参数,只是不包含动态数据,下面这篇文章主要给大家介绍了关于Docker入门教程之本地打包docker镜像的相关资料,需要的朋友可以参考下
    2023-06-06
  • Docker常见指令详解

    Docker常见指令详解

    Docker是一个开放源代码软件,用于自动化部署应用程序为轻量级、可移植的容器,运行在几乎任何地方,常用指令包括docker pull下载镜像,docker images查看镜像,docker rmi移除镜像等,感兴趣的朋友跟随小编一起看看吧
    2024-09-09
  • linux中无make命令的问题(make: *** 没有指明目标并且找不到 makefile及make命令安装方法)

    linux中无make命令的问题(make: *** 没有指明目标并且找不到 makefile及make命令安装方法)

    这篇文章主要介绍了linux中无make命令的问题(make: *** 没有指明目标并且找不到 makefile及make命令安装方法),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • docker compose镜像如何更新

    docker compose镜像如何更新

    这篇文章主要介绍了docker compose镜像更新方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06

最新评论