RabbitMQ
это использоватьErlangнаписано на языке,А RabbitMQ основан на протоколе AMQP. RabbitMQ — сервер очереди брокера сообщений с открытым исходным кодом.,Используется для обмена данными между разрозненными приложениями через общие протоколы.
RabbitMQ
Это широко используемая система очередей сообщений с открытым исходным кодом.,Он поддерживает несколько протоколов обмена сообщениями.,вAMQP(Advanced Message Queuing Протокол) является наиболее часто используемым. Ниже приведены некоторые типичные сценарии использования RabbitMQ:
Проверьте текущую версию Docker
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701
Проверьте версию операционной системы сервера,текущая практикасредадля
centos7.6
среда。
[root@jeven ~]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
Проверьте статус Docker, чтобы убедиться, что служба Docker хоста работает нормально.
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2024-05-12 08:34:14 CST; 1 day 10h ago
Docs: https://docs.docker.com
Main PID: 11565 (dockerd)
Tasks: 28
Memory: 1.2G
CGroup: /system.slice/docker.service
скачатьRabbitMQЗеркало
bitnami/rabbitmq
,Версияlatest
。
[root@jeven ~]# docker pull bitnami/rabbitmq
Using default tag: latest
latest: Pulling from bitnami/rabbitmq
0796bf144e3f: Pull complete
0aa278e6d559: Pull complete
f37134480d36: Pull complete
3ca5a05c65cf: Pull complete
88bb7bc42515: Pull complete
d707818752e6: Pull complete
b8a937a01956: Pull complete
efb772451b7f: Pull complete
db7fe513e59c: Pull complete
0d37a623156d: Pull complete
2e1d8d64104c: Pull complete
1bc67f22006e: Pull complete
891457114828: Pull complete
1161d96f1d40: Pull complete
Digest: sha256:a45676c71cf551fe942245b7ae133f9fd09f6278bb53fa98e18a00cf6abdbd90
Status: Downloaded newer image for bitnami/rabbitmq:latest
docker.io/bitnami/rabbitmq:latest
Создать каталог монтирования
/data/rabbitmq/data
mkdir -p /data/rabbitmq/data && cd /data/rabbitmq/
авторизация каталога
chmod -R 777 /data/rabbitmq/
Для развертывания с помощью docker-cli воспользуйтесь следующими методами.
docker run -d --name rabbitmq --restart always -v /data/rabbitmq/data:/bitnami -e RABBITMQ_USERNAME=admin -e RABBITMQ_PASSWORD=admin -p 5672:5672 -p 15672:15672 bitnami/rabbitmq:latest
использование докера режим создания,Пожалуйста, обратитесь к следующему
docker-compose.yaml
Файлы развертывания。Эта практикаиспользование докера При развертывании в режиме создания вы можете настроить порт сопоставления, а также переменные входа в учетную запись и пароль.
version: '3'
services:
rabbitmq:
image: bitnami/rabbitmq:latest
container_name: rabbitmq
restart: always
environment:
- RABBITMQ_USERNAME=admin
- RABBITMQ_PASSWORD=admin
ports:
- 5672:5672
- 15672:15672
volumes:
- /data/rabbitmq/data:/bitnami
Используйте следующую команду, чтобы начать создание контейнера RabbitMQ.
docker compose up -d
Проверьте состояние контейнера RabbitMQ, чтобы убедиться, что контейнер запускается нормально.
[root@jeven rabbitmq]# docker compose ps
NAME COMMAND SERVICE STATUS PORTS
rabbitmq "/opt/bitnami/script…" rabbitmq running 0.0.0.0:5672->5672/tcp, 0.0.0.0:15672->15672/tcp, :::5672->5672/tcp, :::15672->15672/tcp
Проверьте журнал контейнера RabbitMQ, чтобы убедиться, что служба RabbitMQ работает нормально и нет серьезных ошибок.
docker compose logs
Доступ через браузер: http://192.168.3.166:15672/, замените IP на IP-адрес вашего собственного сервера. Если доступ к странице входа невозможен, проверьте, закрыт ли локальный брандмауэр или разрешены ли соответствующие порты. Облачному серверу также необходимо установить правила группы безопасности.
Введите пароль учетной записи, который мы установили: admin/admin, чтобы войти в RabbitMQ.
Использование Docker для развертывания RabbitMQ значительно упрощает процесс установки и настройки. Экземпляр службы, содержащий подключаемый модуль управления, можно запустить с помощью простой команды. Контейнеризованный RabbitMQ облегчает управление версиями и горизонтальное расширение, а также поддерживает сохранение данных во избежание потери сообщений. Кроме того, Docker Compose можно легко интегрировать с другими микросервисами для формирования стабильной архитектуры обмена сообщениями. В целом этот подход повышает эффективность разработки и удобство обслуживания системы.