Docker 部署单节点 RabbitMQ 实战

科技公元 后端 2024-07-12

Docker 部署单节点 RabbitMQ 实战

本文将详细介绍如何用 Docker 容器及 Docker Compose 部署单节点 RabbitMQ。

实战服务器配置 (架构 1:1 复刻小规模生产环境,配置略有不同)

主机名IPCPU(核)内存(GB)系统盘(GB)数据盘(GB)用途
docker-node-1192.168.9.8141640100Docker 节点 1
docker-node-2192.168.9.8241640100Docker 节点 2
docker-node-3192.168.9.8341640100Docker 节点 3
合计31248120300

实战环境涉及软件版本信息

  • 操作系统:openEuler 22.03 LTS SP3
  • Docker:24.0.7
  • RabbitMQ:3.13.1

1. 前置条件

使用 Docker 部署 RabbitMQ 服务的镜像有以下几种选择:

  • rabbitmq (DockerHub 官方提供,下载量 1B+)
  • bitnami/rabbitmq (Bitnami 出品,下载量 500M+)

本文选择下载量最大的 DockerHub 官方提供的镜像,构建单节点 RabbitMQ 服务。

2. 安装部署 RabbitMQ

2.1 创建数据目录并设置权限bash

代码解读
复制代码
cd /data/containers mkdir -p rabbitmq/{data,config,logs}

2.2 创建 docker-compose.yml 文件

创建配置文件,vi /data/containers/rabbitmq/docker-compose.yml yaml

代码解读
复制代码
services: rabbitmq:   container_name: rabbitmq   image: rabbitmq:3.13.1-management   restart: always   ulimits:     nofile:       soft: 65536       hard: 65536   environment:     - TZ=Asia/Shanghai     - RABBITMQ_DEFAULT_USER=rbadmin     - RABBITMQ_DEFAULT_PASS=OpsXlab@2024   volumes:     - ./data:/var/lib/rabbitmq   networks:     - app-tier   ports:     - 5672:5672     - 15672:15672 networks: app-tier:   name: app-tier   driver: bridge    #external: true

2.3 创建并启动服务

  • 启动服务bash
代码解读
复制代码
cd /data/containers/rabbitmq docker compose up -d

2.4 验证容器状态

  • 查看容器状态bash
代码解读
复制代码
$ docker compose ps NAME       IMAGE                       COMMAND                 SERVICE   CREATED         STATUS         PORTS rabbitmq   rabbitmq:3.13.1-management   "docker-entrypoint.s…"   rabbitmq   3 seconds ago   Up 2 seconds   4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp
  • 查看服务日志ruby
代码解读
复制代码
# 通过日志查看容器是否有异常,结果略 $ docker compose logs -f
  • 查看持久化数据kotlin
代码解读
复制代码
$ ls /data/containers/rabbitmq/data/mnesia/ rabbit@ed4e3c3ed7b4 rabbit@ed4e3c3ed7b4-feature_flags rabbit@ed4e3c3ed7b4.pid rabbit@ed4e3c3ed7b4-plugins-expand

转载来源:https://juejin.cn/post/7089854261105786910

Apipost 私有化火热进行中

评论