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

Docker Compose部署Rabbitmq(脚本下载延迟插件)

整个工具的代码都在Gitee或者Github地址内

gitee:solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

github:GitHub - ZeroNing/solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

1.新增data文件夹

2.新增docker-compose.yml文件

version: '3.8'services:rabbitmq:image: rabbitmq:managementcontainer_name: rabbitmqports:- "15672:15672"- "5672:5672"volumes:- ./start-rabbitmq-with-plugin.sh:/usr/local/bin/start-rabbitmq-with-plugin.sh- ./data:/usr/etc/rabbitmq/data- /etc/localtime:/etc/localtime # 容器与宿主机时间同步command: ["/bin/bash", "-c", "chmod +x /usr/local/bin/start-rabbitmq-with-plugin.sh && /usr/local/bin/start-rabbitmq-with-plugin.sh"]restart: always

3.新增start-rabbitmq-with-plugin.sh脚本

#!/bin/bash# 安装 wget
if ! command -v wget &> /dev/null
thenecho "wget not found, installing..."apt-get update && apt-get install -y wgetif [ $? -ne 0 ]; thenecho "Failed to install wget"exit 1fi
elseecho "wget is already installed"
fi# 创建插件目录,如果不存在的话
mkdir -p /plugins# 下载 RabbitMQ 延迟消息插件
if [ ! -f /plugins/rabbitmq_delayed_message_exchange-3.13.0.ez ]; thenecho "Downloading rabbitmq_delayed_message_exchange plugin..."wget -O /plugins/rabbitmq_delayed_message_exchange-3.13.0.ez \https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases/download/v3.13.0/rabbitmq_delayed_message_exchange-3.13.0.ezif [ $? -ne 0 ]; thenecho "Failed to download rabbitmq_delayed_message_exchange plugin"exit 1fi
elseecho "Plugin already downloaded"
fi# 修改插件文件权限
echo "Setting permissions for the plugin..."
chmod 644 /plugins/rabbitmq_delayed_message_exchange-3.13.0.ez# 启用插件
echo "Enabling the plugin..."
rabbitmq-plugins enable rabbitmq_delayed_message_exchange# 启动 RabbitMQ 服务
echo "Starting RabbitMQ server..."
rabbitmq-server

http://www.lryc.cn/news/481482.html

相关文章:

  • 麦当劳自助点餐机——实现
  • C++ STL CookBook 6:STL Containers (I)
  • 行转列实现方式总结
  • 【go从零单排】初探goroutine
  • HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)本地搜索接入方案
  • C语言可变参数列表编程实战指南:从基础概念到高级应用的全面解析
  • AndroidStudio-文本显示
  • HBuilderX运行微信小程序,编译的文件在哪,怎么运行
  • 百亿AI数字人社会初现:Project Sid展示智能代理文明进化路径
  • 代码随想录训练营Day21 | 491.递增子序列 - 46.全排列 - 47.全排列 II - 332.重新安排行程 - 51.N皇后 - 37.解数独
  • 多用户商城系统的功能及设计和开发
  • 2024年11月8日day8
  • Debezium系列之:Debezium3版本增量快照和只读增量快照应用的变化
  • Python正则表达式1 re.match惰性匹配详解案例
  • WPF(C#)学习日志10:Prism框架下按键绑定
  • WPF中的ResizeMode
  • Unity3D UI 双击和长按
  • LabVIEW扫描探针显微镜系统
  • 问题式教学法在生物教学中的应用探索
  • C++ | Leetcode C++题解之第556题下一个更大元素III
  • 实现链式结构二叉树
  • 在vscode中如何利用git 查看某一个文件的提交记录
  • 【ShuQiHere】️`adb kill-server` 和 `adb start-server` 命令的作用
  • 植物明星大乱斗1
  • 信息安全工程师(84)UNIX/Linux操作系统安全分析与防护
  • 全面解析 Python typing模块与静态类型注解:从基础到高级
  • Jekins篇(搭建/安装/配置)
  • 【工具变量】排污权交易政策试点DID(2000-2023)
  • Proteus中数码管动态扫描显示不全(已解决)
  • 证件照尺寸168宽240高,如何手机自拍更换蓝底