Docker初识:RabbitMq服务的搭建(单机+集群)

一、版本说明:

系统:centos 7

docker:18

rabbitmq:3.8.4

二、单机搭建

1、拉取官方镜像

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[root@VM_0_6_centos ~]# docker search rabbitmq
NAME                                       DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
rabbitmq                                   RabbitMQ is an open source multi-protocol me…   3219                [OK]
bitnami/rabbitmq                           Bitnami Docker Image for RabbitMQ               48                                      [OK]
tutum/rabbitmq                             Base docker image to run a RabbitMQ server      20
kbudde/rabbitmq-exporter                   rabbitmq_exporter for prometheus                13                                      [OK]
frodenas/rabbitmq                          A Docker Image for RabbitMQ                     12                                      [OK]
cyrilix/rabbitmq-mqtt                      RabbitMQ MQTT Adapter                           8                                       [OK]
arm32v7/rabbitmq                           RabbitMQ is an open source multi-protocol me…   7
gonkulatorlabs/rabbitmq                    DEPRECATED: See maryville/rabbitmq              5                                       [OK]
aweber/rabbitmq-autocluster                RabbitMQ with the Autocluster Plugin            5
pivotalrabbitmq/rabbitmq-server-buildenv   Image used to build and test RabbitMQ server…   4
arm64v8/rabbitmq                           RabbitMQ is an open source multi-protocol me…   3
pivotalrabbitmq/rabbitmq-autocluster       RabbitMQ with the rabbitmq-autocluster plugi…   3
henrylv206/rabbitmq-autocluster            RabbitMQ Cluster                                2                                       [OK]
deadtrickster/rabbitmq_prometheus          RabbitMQ + Prometheus RabbitMQ Exporter plug…   2
foxylion/rabbitmq                          Preconfigured RabbitMQ docker image with sup…   1                                       [OK]
amd64/rabbitmq                             RabbitMQ is an open source multi-protocol me…   1
activatedgeek/rabbitmqadmin                A rabbitmqadmin docker image for administrat…   1                                       [OK]
i386/rabbitmq                              RabbitMQ is an open source multi-protocol me…   1
webhostingcoopteam/rabbitmq-conf           RabbitMQ Configurator for Rancher               1                                       [OK]
ekesken/rabbitmq                           docker image for rabbitmq that is configurab…   1                                       [OK]
riftbit/rabbitmq                           RabbitMQ 3.x Container based on Alpine Linux…   1
s390x/rabbitmq                             RabbitMQ is an open source multi-protocol me…   0
ppc64le/rabbitmq                           RabbitMQ is an open source multi-protocol me…   0
pdffiller/rabbitmq                         Rabbitmq 3.7.3 with delayed_message plugin,c…   0
arm32v6/rabbitmq                           RabbitMQ is an open source multi-protocol me…   0

[root@VM_0_6_centos ~]# docker pull rabbitmq:management

选择官方镜像,需要注意的是镜像rabbitmq是不带控制台,所以安装带控制台的镜像需要拉取镜像rabbitmq:management

2、创建文件docker-compose.yml、执行文件run.sh以及相关文件夹data

1
2
3
4
5
[root@VM_0_6_centos standalone]# ls
data  docker-compose.yml  run.sh
[root@VM_0_6_centos standalone]# pwd
/opt/rabbitmq/standalone
[root@VM_0_6_centos standalone]#

docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
version: '3'
services:
  rabbitmq:
    #rabbitmq:management 带有控制台的镜像
    image: rabbitmq:management
    container_name: rabbitmqStandalone
    restart: always
    ports:
      - "15672:15672"
      - "5672:5672"
    volumes:
      - /opt/rabbitmq/standalone/data:/opt/rabbitmq/data
    environment:
      - RABBITMQ_DEFAULT_USER=admin
      - RABBITMQ_DEFAULT_PASS=123456

run.sh

1
2
#! /bin/sh
docker-compose -f docker-compose.yml up -d

3、可以进入控制台查看。

1
2
3
[root@VM_0_6_centos standalone]# docker ps -a
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS                     PORTS                                                                                                                     NAMES
f6d6376c65e6        rabbitmq:management   "docker-entrypoint.s…"   2 days ago          Up 2 days                  0.0.0.0:4369->4369/tcp, 0.0.0.0:5671-5672->5671-5672/tcp, 0.0.0.0:15672->15672/tcp, 0.0.0.0:25672->25672/tcp, 15671/tcp   rabbitmqStandalone

web端 http://127.0.0.1:15672

二、集群搭建

未完待续。。。