自己学Docker:16.Docker使用实战--部署带Web管理工具的RabbitMQ
来源:互联网 发布:足球比赛 编排软件 编辑:程序博客网 时间:2024/06/10 10:46
RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统。
因为RabbitMQ由Erlang实现,本机部署的话还要安装Erlang的开发环境,成本难免高些。然而,借助Docker的话,环境部署便会非常便捷。这次来使用docker快速搭建带web管理功能的RabbitMQ的环境。
查找镜像
通过dockerhub搜索,可以找到官方的RabbitMQ镜像。
在网页的tag标签页下会列出所有可用的tag。
当我们使用命令:
sudo docker pull rabbitmq
默认使用的RabbitMQ最新的新镜像。
目前最新的是3.6,通过查看他的rabbitmq/3.6/debian/Dockerfile生成文件,可以发现并没有我们需要的rabbitmq_management。
所以,需要去tag查找下,带rabbitmq_management功能的tag是什么。通过查找,使用的tag是management,或者版本号-3.6-management。
这样在使用镜像时,就可以使用针对的版本了。
sudo docker pull rabbitmq:management
创建镜像
创建容器使用如下命令:
sudo docker run -d --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 25672:25672 -p 15671:15671 -p 15672:15672 rabbitmq:management
命令很简单:run创建容器,-d后台运行,–name命名容器为rabbitmq,-p将容器内端口映射到本机。
至于为什么要映射这些端口,可以通过查看rabbitmq:management的Dockerfile文件找到原因。
首先,rabbitmq:management的Dockerfile最后指出:
EXPOSE 15671 15672
所以,web管理服务最终使用容器内的这两个端口。
其次,rabbitmq:management的Dockerfile开始的时候指明:
FROM rabbitmq:3.6
所以rabbitmq:management的Dockerfile是基于rabbitmq镜像创建的,rabbitmq的Dockerfile文件最后定义了:
EXPOSE 4369 5671 5672 25672
所以,容器使用的所有端口就明确了。
成功创建容器后,就可以访问web 管理端了 http://127.0.0.1:15672,默认创建了一个 guest 用户,密码也是 guest。
最后,使用Docker搭建RabbitMQ环境,就是这么简单,至于RabbitMQ相关的东西,还是很多的,仅作简介,RabbitMQ是实现高级消息队列协议(AMQP)的开源消息中间件,建立在用于集群和故障转移的开放式平台框架上。 支持Python,Java,Ruby,PHP,C#,JavaScript,Go,Elixir,Objective-C,Swift等主要编程语言。
- 自己学Docker:16.Docker使用实战--部署带Web管理工具的RabbitMQ
- 自己学Docker:15.Docker使用实战--zookeeper集群部署
- Docker实战:Docker安装部署RabbitMQ
- 自己学Docker:14.Docker使用实战:MySQL服务的创建
- Docker实战:使用Docker安装部署Gitlab
- 在docker环境部署RabbitMQ并使用
- Docker部署基于Nodejs的Web应用-实战篇
- Docker容器学习梳理--web管理工具DockerUI部署记录
- Docker容器学习梳理--web管理工具DockerUI部署记录
- docker部署shipyard容器管理工具
- Docker实战:使用Dockerfile创建带Apache服务并支持ssh的Centos Docker镜像
- Docker实战:使用Dockerfile创建带nginx服务并支持ssh的Centos Docker镜像
- Docker实战:使用Dockerfile创建带tomcat服务并支持ssh的Centos Docker镜像
- Docker部署迁移实战
- docker自动化部署实战
- docker 使用 rabbitmq
- 自己学Docker:4.开始了解Docker的工作模式
- Docker实战(二):制作自己的Docker镜像
- android悬浮按钮简单可拖拽
- 【设计模式】桥接模式(Bridge)
- Linux(Ubuntu)下安装QT SDK
- Spring IO Platform介绍
- whatsApp 谷歌 Facebook 用不了?不正常? 速度慢? 一招让你永久解决烦恼!
- 自己学Docker:16.Docker使用实战--部署带Web管理工具的RabbitMQ
- jmap操作注意点
- 手游上线基本流程
- 字体、文本、鼠标样式
- oracle取出数据时候小数点前的0不显示
- 责任链模式(Chain of Responsibility)-----基于JAVA语言
- Eclipse CDT: Symbol 'cout' could not be resolved 解决
- 第二章 IPC机制
- Linux/开发机