Как запустить rabbitmq на windows

Рассмотрим установку RabbitMQ (программный брокер сообщений) на Windows.

Установка Erlang

Перед установкой RabbitMQ, убедитесь, что на вашем компьютере установлены Erlang и .NET Framework (обычно они уже установлены, но лучше проверить наличие обновлений).

Erlang. Загрузите установщик Erlang с официального сайта. Запустите установщик и следуйте инструкциям установки, установка очень простая – просто соглашайтесь со всеми пунктами. После установки проверьте, что Erlang правильно установлен, открыв командную строку и введите команду erl. Если Erlang успешно установлен, откроется интерактивная оболочка Erlang. Также разрешаем правила firewall Windows defender, которые срабатывают при запуске компонента.

Установка и запуск RabbitMQ

Теперь можно приступить к установке RabbitMQ. Загрузите установщик RabbitMQ с официального сайта. Запустите установщик RabbitMQ. Установка также простая, соглашаемся со всеми пунктами. Во время установки укажите путь для установки RabbitMQ и другие настройки, если требуется.

После завершения установки, можно запустить RabbitMQ и проверить его работу. Перейдите в папку, где установлен RabbitMQ, и найдите папку “sbin”. Запустите командную строку от имени администратора и перейдите в директорию. Например: C:Program FilesRabbitMQ Serverrabbitmq_server-3.12.2sbin

Выполняем команду для установки Web-плагина:

rabbitmq-plugins.bat enable rabbitmq_management

Далее запускаем последовательно команды:

rabbitmq-service.bat stop
rabbitmq-service.bat install
rabbitmq-service.bat start

Теперь можно заходить через веб-интерфейс, который по умолчанию работает на порту 15672. Для доступа к веб-интерфейсу откройте веб-браузер и перейдите по адресу http://localhost:15672/. Введите логин и пароль (по умолчанию “guest”/”guest”).
Теперь RabbitMQ установлен и готов к использованию.

Нужна помощь? Обслуживание и настройку RabbitMQ мы осуществляем в рамках услуги DevOps аутсорсинг.

Брокеры сообщений — это приложения-посредники, используемые в различных видах архитектуры программного обеспечения, например, в микросервисах. Брокеры пересылают информацию в виде сообщений от сервиса к сервису. 

С брокерами сообщений тесно связан паттерн «publisher-subscriber», суть которого заключается в передаче некоторых событий от так называемых «издателей» (Producers) к потребителям (Consumers). 

Чаще всего в реализации этого паттерна участвует промежуточное звено — тот самый брокер сообщений. 

Image31

Для простоты можно провести аналогию. Представим YouTube: там есть каналы, у которых можно подписаться на уведомления. Далее происходит событие — публикация нового видео. Мы подписаны на это событие и получаем уведомление о том, что видео вышло.

cloud

Как работают приложения с брокерами сообщений?

Тут нас будут интересовать три главных термина: Exchange, Queue, Binding.

Exchange 

Сюда попадают сообщения-события. Exchange решает, в какую очередь какие события попадут. Это происходит на основе связей — байндингов, о которых будет сказано далее. На схеме отметим Exchange вот таким способом:

Queue 

Или просто очередь. Структура данных, получение которых построено по принципу «первый вошёл — первый вышел», или FIFO. Данные хранятся на диске или в ОЗУ и представляют непосредственно сообщения. Очередь отдает копии этих данных потребителям (consumers). Схематично изобразим:

Image26

Binding 

Переводится как «привязка». Это набор правил, которые указывают Exchange, в какую из очередей должны попадать сообщения. Между Exchange и Queue может быть несколько привязок с разными параметрами.

Image17

Принцип работы 

Producer — это какой-то сервис, который генерирует сообщения и посылает их брокеру. Consumer — это другой сервис, который при получении сообщения начинает его обработку. В случае той же аналогии с Ютубом, «издатель» — это сам YouTube, а «потребитель» — это ваш телефон, получающий пуш-уведомления

  1. Producer отправляет сообщение, и оно попадает в Exchange.

Image8

  1. Очередь хранит это сообщение — например, на диске.

Image10

  1. Когда consumer готов принять сообщение (закончил обработку предыдущего или просто приложение-обработчик событий запустилось) — сервер посылает в него скопированные данные из очереди.

 

Image29

  1. Consumer получает сообщение, затем как-то обрабатывает его и передаёт брокеру подтверждение (ACK).

Image27

  1. После получения брокером подтверждения сообщение удаляется.

Image40

Это популярный open-source брокер сообщений. Он базируется на основе протокола AMQP (Advanced Message Queuing Protocol) — это открытый протокол для передачи сообщений-событий через специальный брокер. Сам протокол имеет очень много возможностей, и помимо RabbitMQ его реализует, например, Apache Qpid. 

Сам «кролик» разработан на языке программирования Erlang, а его основные преимущества — пропускная способность и максимальная гибкость маршрутизации. Для «кролика» существует множество вариантов настройки правил того, какие сообщения и куда будут попадать на обработку. 

Подключаемся к Рэббиту мы по протоколу TCP: клиент инициализирует подключение по адресу хоста и сохраняет соединение до тех пор, пока ему необходимо взаимодействовать с RabbitMQ. Он также поддерживает аутентификацию, например, по логину и паролю

Установка на разные ОС

RabbitMQ состоит из двух частей: сервер и WebUI (админка). В UI можно смотреть, что, собственно, происходит в нашем брокере: живы ли узлы в кластере, сколько сообщений в процессе обработки и т.д. Давайте разберёмся, как это всё устанавливать на разные ОС.

Ubuntu / Debian

Для установки Rabbit на Ubuntu или Debian есть готовая инструкция на официальном сайте. Можно просто выполнить следующий скрипт в командной строке. Разберём его подробнее:

  • Установка стандартных зависимостей

sudo apt-get update -y
sudo apt-get install curl gnupg -y
sudo apt-get install apt-transport-https
  • Добавляем ключи репозиториев

curl -1sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg > /dev/null

curl -1sLf https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg > /dev/null

curl -1sLf https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.9F4587F226208342.gpg > /dev/null

deb [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu $distribution main

deb-src [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu $distribution main

deb [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu $distribution main

deb-src [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu $distribution main

deb [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu $distribution main

deb-src [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu $distribution main

deb [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu $distribution main

deb-src [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu $distribution main
  • После выполнения скрипта нам необходимо включить UI. Выполним следующие команды:
sudo rabbitmq-plugins enable rabbitmq_management

Image18

  • Добавим пользователя, под которым мы будем заходить:

sudo rabbitmqctl add_user rabbitmqadmin ваш_пароль
  • И выдадим ему все права:

sudo rabbitmqctl set_user_tags rabbitmqadmin administrator
sudo rabbitmqctl set_permissions -p / rabbitmqadmin ".*" ".*" ".*"

Теперь мы можем зайти на адрес <ваш-IP>:15672, ввести логин и пароль и увидеть админку.

Image21

Windows

Для установки RabbitMQ на Windows также есть официальная инструкция, в которой описан процесс установки. Можно использовать Chocolatey или простой установщик. Установка этого брокера сообщений на Windows может быть полезна, например, для локальной отладки приложений. Но сначала нам необходимо установить Erlang/OTP с официального сайта Erlang. 

Image25

Запустите скачанный файл и пройдите процесс установки.

Image14

После установки Erlang ставим сам Rabbit, например, через файл установки с официального сайта:

Image35

Далее включим UI:

cd 'C:\Program Files\RabbitMQ Server\rabbitmq_server-3.13.0\sbin'
./rabbitmq-plugins.bat enable rabbitmq_management

Image20

По адресу localhost:15672 и с данными для входа guest:guest мы можем попасть в Web UI.

301b15e2 4536 467d Bb17 Cf411f5b0299

Astra Linux

Astra Linux — сертифицированный российский дистрибутив Linux, основанный на Debian. Разберём, как установить RabbitMQ на эту ОС. Мы будем использовать Astra Linux CE 2.12, доступный для установки в Timeweb Cloud.

Image41

В менеджер пакетов APT уже добавлены нужные нам ключи и источники ПО, поэтому RabbitMQ можно просто поставить командой:

sudo apt install -y rabbitmq-server

Image12

Включаем плагин для Web UI:

sudo rabbitmq-plugins enable rabbitmq_management

Добавляем пользователя admin по аналогии с Ubuntu:

sudo rabbitmqctl add_user rabbitmqadmin ваш_пароль
sudo rabbitmqctl set_user_tags rabbitmqadmin administrator
sudo rabbitmqctl set_permissions -p / rabbitmqadmin ".*" ".*" ".*"

По адресу ваш_ip:15672 будет доступна панель администратора.

Image5

Docker

Вероятно, самый простой и удобный вариант установки RabbitMQ. Мы можем поставить RabbitMQ, используя команду docker run:

docker run --rm -p 15672:15672 rabbitmq:3.13.0-management

Image3

На порту 15672 будет доступна админка, в которой можно авторизоваться с помощью данных для входа guest:guest.

Однако такой вариант запуска не подходит для production-среды — докер назначает имя сервера для контейнера, а брокер сообщений хранит своё состояние в папке с этим названием. При каждой новой сборке контейнера Рэббит будет терять информацию о стейте.

С использованием docker-compose мы сможем удобно описать все необходимые характеристики сервиса: сменить стандартные логин и пароль, примонтировать папку с состоянием и т.д. Добавим файл docker-compose.yml (это можно сделать на вашем сервере, где установлен Docker, или на вашем ПК). Вот какое может быть содержимое у этого файла:

version: "3.3"
services:
  rabbit:
    image: rabbitmq:3.13.0-management
    environment:
      - RABBITMQ_DEFAULT_USER=admin #укажите имя пользователя
      - RABBITMQ_DEFAULT_PASS=password #укажите сложный пароль
    volumes:
      - ./rabbit:/var/lib/rabbitmq #монтируем папку с состоянием
    ports:
      - 15672:15672 #открываем порт для админки

Запускаем с помощью команды:

docker compose up -d

Image6

И нам снова доступна админка.

Обзор RabbitMQ Management

Разберём основные возможности RabbitMQ и его панели администрирования. На главной странице можно посмотреть общую информацию: узлы, их состояние, общее количество сообщений и т.д.

Image5

Connections — это список подключений к кластеру:

Image23

Channels — список каналов. В рамках одного подключения можно создавать несколько каналов, через которые отправляются сообщения. Это сделано для того, чтобы не создавать множество TCP-соединений.

Image9

Exchanges

Обменники рассмотрим подробнее.

Image1

Они имеют бывают разных видов, которые отличаются механизмом правил фильтрации сообщений — на основе этих правил события попадают в конкретные очереди.

  • Direct Exchange

У каждого сообщения есть некоторый ключ — так называемый ключ маршрутизации (Routing Key). Эти сообщения попадут в те очереди, где в привязке к Exchange указан такой же ключ.

Image24

Пример настройки:

Указываем RoutingKey при создании обменника:

Image39

В созданном обменнике отправляем сообщение, указав такой же RoutingKey.

Image36

  • Topic Exchange

Маршрутизация по некоторому ключу-шаблону. При создании шаблона могут использоваться 0 или более слов (латинские буквы в разных регистрах и цифры), с разделителем в виде точки (например, «key.event»), а также символы # и *.

Image11

  • Fanout Exchange

Правила отсутствуют. Каждое отправленное сообщение попадает во все очереди.

Image34

  • Headers Exchange

Использует заголовки байндинга и сообщения, сравнивает пары «ключ-значение» из этих заголовков.

Image37

Очереди

Image13

В отображении конкретной очереди можно увидеть график, где отображается, сколько сообщений находится в ней, статистика по времени доставки и принятия этих сообщений. Сообщения могут быть в двух статусах: Ready — ждут обработки, Unacked — в процессе обработки консьюмером. 

Image33

Реализуем Publisher-Subscriber на Python

Разберём, как использовать RabbitMQ для реализации Pub-Sub на Python. У вас должен быть установлен Python. При написании этой статьи была использована версия 3.11.5.

Мы будем использовать библиотеку Pika. Есть и другие библиотеки, например, rabbitpy или amqp-lib, но они очень давно не обновлялись.

Выберите или создайте папку, в которой будет находиться код приложения, например:

mkdir rabbitmq-article

Откройте эту папку в вашей IDE. Я использую Visual Studio Code, также можно использовать PyCharm или другие среды разработки.

Установим библиотеку Pika с помощью команды в терминале:

pip install pika 

Image28

Добавим два файла: sender.py и receiver.py:

Image30

В файле sender.py опишем код для Producer, который будет отправлять сообщения. Для этого нужно:

  • Создать подключение к брокеру

  • Создать новый канал с помощью этого подключения

  • Создать новый обменник

  • Создать очередь

  • Привязать очередь к обменнику

  • Выполнить функцию публикации сообщения в созданную очередь

Код sender.py:

from pika import BlockingConnection, ConnectionParameters
from pika.exchange_type import ExchangeType

# создаём подключение, указав параметры в объекте ConnectionParameters 
connection = BlockingConnection(ConnectionParameters(host='localhost'))

# создаём канал
channel = connection.channel()

# создаём обменник
channel.exchange_declare('new_exchange', ExchangeType.direct)

# определяем очередь
queue = channel.queue_declare(queue='new_queue')

# привязываем очередь к обменнику
channel.queue_bind(exchange='new_exchange', queue='new_queue', routing_key='key')

# публикуем сообщение
channel.basic_publish(exchange='new_exchange', routing_key='key', body='Hello World!')

print("Сообщение 'Hello World!' отправлено")
connection.close()

Теперь реализуем получение сообщения:

  • Добавим подключение и канал

  • Определим обменник и очередь с тем же названием, что и в файле sender.py

  • Привяжем очередь к обменнику

  • Опишем функцию, которая будет вызываться при получении нового сообщения

  • Вызовем метод start_consuming для того, чтобы запустить ожидание сообщений

Код receiver.py:

from pika import BlockingConnection, ConnectionParameters
from pika.exchange_type import ExchangeType
import sys, os

def main():
    # создаём подключение
    connection = BlockingConnection(ConnectionParameters(host='localhost'))
    # создаём канал
    channel = connection.channel()

    # создаём обменник
    channel.exchange_declare('new_exchange', ExchangeType.direct)

    # определяем очередь
    queue = channel.queue_declare(queue='new_queue')

    # привязываем очередь к обменнику
    channel.queue_bind(exchange='new_exchange', queue='new_queue', routing_key='key')

    # функция, которая вызывается при получении сообщения
    def handle(ch, method, properties, body):
        print(f"Получено сообщение: {body}")

    # привязываем callback-функцию и очередь
    channel.basic_consume(queue='new_queue', on_message_callback=callback, auto_ack=True)

    print('Ожидание сообщения. Чтобы завершить работу приложения, нажмите ctrl+c')
    channel.start_consuming()

if __name__ == '__main__':
    try:
        main()
    except KeyboardInterrupt:
        try:
            sys.exit(0)
        except SystemExit:
            os._exit(0)

Сначала запустим receiver:

Image16

Далее запускаем sender:

Bcab1a57 6e16 4e38 9068 E469caa29ff1

И в терминале, где запущен receiver, мы видим сообщение:

Image15

В RabbitMQ Management мы можем зайти в созданный обменник и увидеть привязку к очереди по Routing key:

Image2

Заключение

В этой статье мы рассмотрели, что такое брокеры сообщений, как приложения работают с ними, а также научились устанавливать и использовать брокер сообщений RabbitMQ.

RabbitMQ is a great queuing tool that can run on a variety of platforms. If you are planning on doing any distributed, asynchronous processing and you need a system to queue and process items in the background, then you should seriously consider RabbitMQ. The online documentation is great and there are plenty of tutorials that can take you through the basics of creating and consuming queues in your application. However, before you start typing any code, you first you need to get RabbitMQ up and running somewhere (local system, server etc). In this post, we will go through the installation steps and see what’s needed to get us to that point.

1. Erlang Installation####

RabbitMQ runs on the Erlang virtual runtime. Don’t ask me why, but it does, so we need to install Erlang first as without it we can’t get RabbitMQ to work. You can get the latest Windows installer here. Make sure you choose the 32 or 64bit version depending on the system you plan to run it. Download and install it. There is no restart required, so this first step is easy. Before we continue, ensure that the appropriate environment variable (ERLANG_HOME) has been created during the installation. If, for any reason, the environment variable is missing, you will need to create it manually as per the image below:

2. RabbitMQ Service Installation####

Grab the latest installer for Windows from the RabbitMQ website here Download and install. Again, nothing funcy here.

3. RabbitMQ Web Management Plugin installation####

RabbitMQ runs, by default, as a Windows Service and technically you shouldn’t need to do anything else to start interacting with it. However, any interaction with the service needs to happen over the command-line. If you are not a die-hard command-line, then there is an solution for you. RabbitMQ comes with a handy and, nice if I may say, web-based management plugin which is part of the installation files. To install the web plugin you just need follow the steps below:

  • Open an elevated command line (Run as Administrator)
  • Navigate to the sbin directory of the RabbitMQ Server installation directory. In my case the path is C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.3.4\sbin
  • Run the following command to enable the plugin
    rabbitmq-plugins.bat enable rabbitmq_management
  • Then, re-install the RabbitMQ service using the commands below:
rabbitmq-service.bat stop 
rabbitmq-service.bat install 
rabbitmq-service.bat start 

To check if everything worked as expected, navigate to http://localhost:15672/mgmt. You will be prompted for username and password. The default credentials are:
Username: guest
Password: guest

You should now be presented with the following page:

4. Install Handle.exe for RabbitMQ’s file descriptors####

When you first log in to the RabbitMQ web dashboard, under the «Overview» tab you will notice that in the «File descriptors» field there is a question mark about the missing Handle.exe. Handle.exe enables RabbitMQ to monitor the local file system. It will still work without it but I think that it’s better to make it available, so let’s go and get it. The dashboard provides a handy link to the Handle download page, but you can also use this link to go to that same page directly. As a side-note, this tool is written by no one else but Mark Russinovich himself. This guy is a genius!

Download the zip file and unzip it anywhere you want. I decided to extract mine in “C:\Program Files\Handle”. It is important that you keep a note of the extracted path as we will need to add it to PATH environment variable so it is available to RabbitMQ.

  • Open the Environment Variables Windows,
  • Scroll down to the System Variables -> Path variable and click on Edit.
  • At the end of the Variable Value, add the path to the Handle.exe:
  • Click OK twice to close all windows down

Finally, we need to restart the RabbitMQ service so that our changes can be picked up. Use the steps below to restart the service:

  • Open up an elevated command line
  • Type the following commands
rabbitmq-service.bat stop 
rabbitmq-service.bat start 

Go back to the web dashboard and check the Overview page. The warning about the missing Handle.exe should now be gone.

Next time we will look into how we can use the queuing platform and integrate it with our .NET code.

Happy coding…

RabbitMQ is also known as message queueing technology or message broker. It’s an open source message broker. Simply stated: it is program that determines queues and which applications connect to send messages or messages. Any kind of information can be
given in a message. The RabbitMQ server is written in the Erlang programming language and is built on the Open Telecom Platform framework for clustering and failover.

RabbitMQ Tutorial :


  1. Install RabbitMQ on Windows
  2. Spring Boot RabbitMQ Example
  3. Spring Boot + RabbitMQ + Error Handling
    Example
  4. Spring Cloud Stream + RabbitMQ Example

  5. Spring Boot + Pivotal Cloud Foundry (PCF) + RabbitMQ Example
  6. RabbitMQ Interview Questions

Steps to install Rabbitmq

First, goto Erlang and click on Windows Binary File as given below:

Erlang Home Page

Now double click on downloaded otp_win64_22.1.exe.

Install Erlang

Click on Next

Erlang Home Page

Click on Install

Erlang

Erlang installation is now completed, click on Close.

Erlang Install Completed

Now will download and install rabbitmq server as per below steps.

Goto RabbitMQ Home Page, click on Windows Installer as shown in screenshot.

Rabbitmq home page

Download rabbitmq server .exe as shown in screenshot.

Rabbitmq server download page

Double click on downloaded rabbitmq-server-3.8.1.exe and click on Next.

Install Rabbitmq

Click on Install

Install Rabbitmq

Click on Next.

Install Rabbitmq

Click on Finish and installation will complete.

Install Rabbitmq

Now will start Rabbitmq server from command prompt, goto rabbitmq server sbin path where it gets installed. In my case it’s in C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.1\sbin

rabbitmq-server start

Start Rabbitmq

Note: The above message is received if RabbitMQ Server is already running.

Next we will set up the RabbitMQ plugin by using below command, to use the RabbitMQ Management Console from Web Browser.

rabbitmq-plugins.bat enable rabbitmq_management

Setup Rabbitmq Management Console

Goto http://localhost:15672, you see login page, use guest as username and password.

Login Rabbitmq Management Console

Now you can see RabbitMQ Consol Management.

Rabbitmq Management Console

After setting the RabbitMQ at local, you can try RabbitMQ Example and Spring Cloud Stream with
RabbitMQ Example.

Kafka или RabbitMQ

Для начала установки необходимо скачать с сайта и установить Docker на Windows 10. Сложностей с этим возникнуть не должно, после установки необходимо установить или обновить ядро Linux по инструкции.

После того, как Docker установлен, запустим его.

Запустим консоль Windows и введем команду:

docker pull rabbitmq:3.10-management

Данная команда загрузит образ RabbitMQ c DockerHub.

После того, как образ загружен локально можно запустить контейнер на основе загруженного образа командой:

docker run --rm -it -p 15672:15672 -p 5672:5672 rabbitmq:3.10-management

После запуска контейнера, можно проверить работу перейдя по адресу: http://localhost:15672, командой мы указали, что для клиентских подключений используем порт 5672, а страница управления разместится на порту 15672.

Для входа в панель управления можно использовать логин и пароль по умолчанию: guest

Запуск RabbitMQ с помощью Docker-compose

Чтобы развернуть RabbitMQ с помощью Docker Compose, нам сначала нужно создать файл Docker Compose. Файл Docker Compose – это файл YAML, который определяет службы, сети и тома, составляющие наше приложение.

Вот пример файла Docker Compose, который развертывает экземпляр RabbitMQ:

version: '3'

services:
  rabbitmq:
    image: rabbitmq:management
    container_name: rabbitmq
    environment:
      - RABBITMQ_DEFAULT_USER=guest
      - RABBITMQ_DEFAULT_PASS=guest
    ports:
      - "5672:5672"
      - "15672:15672"

networks:
  default:
    driver: bridge

В командной строке перейдите в директорию, где находится ваш файл docker-compose.yml, и выполните следующую команду:

Давайте пройдемся по каждому разделу этого файла, чтобы понять, что он делает:

  • version: ‘3’: Здесь указывается версия формата файла Docker Compose, который мы используем.
  • services: В этом разделе определяется служба RabbitMQ, которую мы хотим развернуть. В данном случае мы используем официальный образ RabbitMQ Docker с включенным плагином управления.
  • image: rabbitmq:management: Здесь указывается образ докера RabbitMQ, который мы хотим использовать.
  • container_name: rabbitmq При этом RabbitMQ контейнеру присваивается имя.
  • environment: В этом разделе задаются переменные среды для контейнера RabbitMQ. В этом примере мы устанавливаем имя пользователя и пароль по умолчанию на “guest”. Обратите внимание, что это не рекомендуется для производственных сред.
  • ports: В этом разделе порты, используемые RabbitMQ, сопоставляются с соответствующими портами на главном компьютере. В этом случае мы сопоставляем порт 5672 для связи AMQP и порт 15672 для интерфейса управления RabbitMQ.
  • networks: В этом разделе задаются сетевые настройки для контейнера RabbitMQ. В этом примере мы используем сеть Docker bridge по умолчанию.

Консультирую по разным конфигурациям 1С, дорабатываю, разрабатываю расширения, отчеты и обработки, администрирую базы 1С на linux.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как запланировать сон windows 10
  • Hp photosmart b110 драйвера для windows 10
  • Stop 0x00000019 windows 7 при загрузке
  • System typeinitializationexception инициализатор типа system windows application выдал исключение
  • Windows vista theme for linux