当前位置: 首页 > news >正文

docker安装RabbitMQ,创建RabbitMQ容器以及docker-compose.yml配置

Docker安装RabbitMQ

RabbitMQ 是一个开源的、广泛使用的消息中间件(Message Broker),基于 AMQP(Advanced Message Queuing Protocol) 协议实现,支持多种消息传递模式,适用于分布式系统、微服务架构和异步通信场景。

1.在docker-hup里查找RabbitMQ镜像

在这里插入图片描述

2.在docker里安装RabbitMQ

// 安装最新版本
docker pull RabbitMQ// 安装指定版本
docker pull RabbitMQ:4.0.9// 查看安装的镜像
docker images

3.创建RabbitMQ容器

(1)创建自定义网络

Docker自定义网络的核心优势:

  1. 容器间通信:自定义网络允许容器通过服务名直接通信,无需硬编码IP地址。
  2. 网络隔离:提高安全性,防止未授权访问。
  3. 灵活的网络策略:可以设置网络别名、防火墙规则等。
  4. 避免端口冲突:多个服务可以使用相同的端口号,通过不同网络隔离。
// 创建自定义网络
docker network create fusion_network
// 查看自定义网络
docker network ls
//查找使用该网络的容器
docker network inspect mysql_network | grep Containers
// 停止网络
docker stop fusion_network
// 删除网络
docker rm fusion_network
(2) 创建容器
docker run -it -d --name fusion_reabbitmq \
-p 4369:4369 -p 5671:5671 -p 5672:5672 \
--net fusion_network  \
-e RABBITMQ_DEFAULT_USER=root \
-e RABBITMQ_DEFAULT_PASS=123456\
-e TZ=Asia/Shanghai \
rabbitmq:4.0.9

4.docker-compose.yml配置

services:mysql:image: mysql:8.0.42container_name: fusion_mysqlnetworks:- fusion_networkports:- "3303:3306"volumes:- /root/mysql/log:/var/log/mysql- /root/mysql/data:/var/lib/mysql- /root/mysql/conf:/etc/mysql/conf.denvironment:MYSQL_ROOT_PASSWORD: 123456restart: unless-stoppedredis:image: redis:8.0.2container_name: fusion_redisports:- "6379:6379"networks:- fusion_networkvolumes:- /root/redis/conf:/usr/local/etc/redisenvironment:TZ: Asia/Shanghaicommand: ["redis-server", "/usr/local/etc/redis/redis.conf"]restart: unless-stoppedmongo:image: mongo:8.0.10container_name: fusion_mongoports:- "27017:27017"networks:- fusion_networkvolumes:- /root/mongo:/etc/mongo- /root/mongo/data/db:/data/dbenvironment:MONGO_INITDB_ROOT_USERNAME: rootMONGO_INITDB_ROOT_PASSWORD: 123456TZ: Asia/Shanghaicommand: ["mongod", "--config", "/etc/mongo/mongod.conf"]restart: unless-stoppedrabbitmq:image: rabbitmq:4.0.9container_name: fusion_reabbitmqports:- "4369:4369"- "5671:5671"- "5672:5672"networks:- fusion_networkenvironment:RABBITMQ_DEFAULT_USER: rootRABBITMQ_DEFAULT_PASS: 123456TZ: Asia/Shanghairestart: unless-stoppedminio:image: minio/minio:latestcontainer_name: fusion_minioports:- "9000:9000"- "9001:9001"networks:- fusion_networkenvironment:MINIO_ACCESS_KEY: rootMINIO_SECRET_KEY: 123456TZ: Asia/Shanghaivolumes:- /home/minio/data:/data- /home/minio/config:/root/.miniocommand: ["server", "/data", "--console-address", ":9001", "--address", ":9000"]restart: alwayselasticsearch:image: elasticsearch:8.0.1container_name: fusion_elasticsearchnetworks:- fusion_networkports:- "9200:9200"- "9300:9300"privileged: truevolumes:- /root/elasticsearch/data:/usr/share/elasticsearch/data- /root/elasticsearch/plugins:/usr/share/elasticsearch/plugins- /root/elasticsearch/config:/usr/share/elasticsearch/configenvironment:discovery.type: single-nodeES_JAVA_OPTS: "-Xms512m -Xmx512m"restart: alwayskibana:image: kibana:8.0.1container_name: fusion_kibananetworks:- fusion_networkports:- "5601:5601"privileged: truevolumes:- /root/kibana/data:/usr/share/kibana/data- /root/kibana/config:/usr/share/kibana/configenvironment:ELASTICSEARCH_HOSTS: http://elasticsearch:9200restart: always
http://www.lqws.cn/news/587197.html

相关文章:

  • 博图SCL编程:结构体(STRUCT)使用详解与实战案例
  • 英国研究团队启动合成完整人类基因组的前沿项目
  • 解决VSCode打开最近项目后终端shell不正常的问题
  • 数据结构入门-图的基本概念与存储结构
  • 数据结构与算法分析课设:一元多项式求值
  • STM32-第一节-新建工程,GPIO,点亮LED,蜂鸣器
  • 零成本接入+企业级部署:2025年AI大模型实战指南
  • 某只股票量化对冲策略计算绘图
  • 利用不坑盒子的Copilot,快速排值班表
  • JSON-LD 开发手册
  • 探索 AI 系统提示与模型资源库:`system-prompts-and-models-of-ai-tools`
  • 门控循环单元(GRU):LSTM 的轻量级高效 “记忆专家”
  • Android Liunx ffmpeg交叉编译
  • 自己电脑搭建本地服务器并实现公网访问,内网也能提供互联网连接使用
  • 零基础学土壤物理建模|Hydrus2D、Hydrus3D实操教程+参数设置技巧
  • 【算法】动态规划 70: 爬楼梯
  • ue xr 系统
  • 飞算 JavaAI 深度实战:从老项目重构到全栈开发的降本增效密码
  • 【Spring AI】 1接入 Ollama实践
  • 周赛98补题
  • C/C++ 使用rapidjson库 操作Json格式文件(创建、插入、解析、修改、删除)
  • 【数论 构造】 P11036 【MX-X3-T3】「RiOI-4」GCD 与 LCM 问题|普及+
  • 高效读取文件中指定行段的两种方法
  • mysql运维语句
  • C++ Vector的使用(下)
  • Qt Hello World 程序
  • ES6从入门到精通:箭头函数
  • C++ Vector的使用(上)
  • Linux基础环境开发工具apt、vim和gcc/g++
  • Excel 中拖动公式时,如何让引用的单元格“固定”或“变动”?