docker搭建rabbitmq
Docker部署rabbitmq
1、 准备docker环境:
# yum -y install docker
# docker ps
@如果有输出
CONTAINER ID IMAGE COMMAND CREATED PORTS
证明已经安装完毕。
2、 部署外网环境
# docker search rabbitmq
letsxo/rabbitmq RabbitMQ with Management and MQTT plugins.
@选择这一个,因为他又web管理和MQTT。
# docker pull letsxo/rabbitmq
# docker images
letsxo/rabbitmq latest 93a7eefb0865 2 weeks ago 38.6MB
@接下来,根据下载的镜像创建rabbitmq容器
# docker run -d -p 5671:5671 -p 5672:5672 -p 15672:15672 -p 15671:15671 -p 25672:25672 -v /data/rabbitmq-data/:/var/rabbitmq/lib --name rabbitmq 93a7eefb0865
@ 93a7eefb0865 :是镜像的ID,此处也可以写镜像的名字:如letsxo/rabbitmq
@查看已经运行的容器:
# docker ps
@可以看到容器已经正常运行,此时可以通过访问本机的15672端口访问web管理端:http://本机ip:15672
3、 部署内网机器
@首先需要下载,rabbitmq的镜像,一是在网上直接下载(太慢了);二是直接找一台能上外网带docker环境的机器,使用docker pull下载。
# docker search rabbitmq
# docker pull letsxo/rabbitmq
# docker images
letsxo/rabbitmq latest 93a7eefb0865 2 weeks ago 38.6MB
# docker save 93a7eefb0865 > rabbitmq.tar
@将rabbitmq.tar拷贝到内网服务器:
# scp –P port rabbitmq.tar user@ip:path
如果是默认的22端口,-P就不用了。
在内网服务器上将拷贝来的rabbitmq.tar文件导入为镜像:
# docker load < rabbitmq.tar
@打标签:
# docker tag 93a7eefb0865 rabbitmq:cuishuai
@创建并运行容器:
# docker run -d -p 5671:5671 -p 5672:5672 -p 15672:15672 -p 15671:15671 -p 25672:25672 -v /data/rabbitmq-data/:/var/rabbitmq/lib --name rabbitmq 93a7eefb0865
! 93a7eefb0865 :是镜像的ID,此处也可以写镜像的名字:如letsxo/rabbitmq
4、 Web端配置rabbitmq:
@rabbitmq默认创建了guest/guest用户,使用此用户不安全。需要修改密码,及创建新的用户。
1)登陆后你如图所示的步骤进行操作来添加新用户:
2)修改密码:
修改密码和权限按1->2->3来完成;4是用来删除用户的。
3)创建vhost,按如图1->2->3->4来完成:
将创建的vhost应用到用户,在首页的用户名上单击用户名进入如图所示的界面:
4)创建policy
注:
rabbitmq的数据库名称规则是,NODENAME@hostname,Docker每次从Docker image启动容器的时候会自动生成hostname,这样一来,你保存在主机上的数据库就会没用了,包括之前创建的用户也会没有了。所以在创建容器的时候必须指定--hostname=rabbitmqhostone,这样docker环境启动后rabbitmq就会一直读取固定目录中的数据了
docker搭建rabbitmq的更多相关文章
- Docker搭建RabbitMQ集群
Docker搭建RabbitMQ集群 Docker安装 见官网 RabbitMQ镜像下载及配置 见此博文 集群搭建 首先,我们需要启动运行RabbitMQ docker run -d --hostna ...
- Docker 搭建 RabbitMQ
Docker RabbitMQ RabbitMQ 安装非常繁琐,使用 Docker 快速搭建一个 RabbitMQ 开发环境 步骤 拉取镜像 docker pull rabbitmq 启动容器 端口会 ...
- 用Docker搭建RabbitMq的普通集群和镜像集群
普通集群:多个节点组成的普通集群,消息随机发送到其中一个节点的队列上,其他节点仅保留元数据,各个节点仅有相同的元数据,即队列结构.消费者消费消息时,会从各个节点拉取消息,如果保存消息的节点故障,则无法 ...
- Docker搭建RabbitMQ(阿里云)
0 环境 系统环境:centos7 服务器:阿里云 1 正文 1 获取安装RabbitMQ https://hub.docker.com/_/rabbitmq 默认rabbitmq镜像是不带web端管 ...
- Docker:搭建RabbitMQ集群
RabbitMQ原理介绍(一) RabbitMQ安装使用(二) RabbitMQ添加新用户并支持远程访问(三) RabbitMQ管理命令rabbitmqctl详解(四) RabbitMQ两种集群模式配 ...
- RabbitMQ(四):使用Docker构建RabbitMQ高可用负载均衡集群
本文使用Docker搭建RabbitMQ集群,然后使用HAProxy做负载均衡,最后使用KeepAlived实现集群高可用,从而搭建起来一个完成了RabbitMQ高可用负载均衡集群.受限于自身条件,本 ...
- 搭建RabbitMQ集群(Docker)
前一篇搭建RabbitMQ集群(通用)只是把笔记直接移动过来了,因为我的机器硬盘已经满了,实在是开不了那么虚拟机. 还好,我的Linux中安装了Docker,这篇文章就简单介绍一下Docker中搭建R ...
- docker实战系列之搭建rabbitmq
1.搜索镜像[注:因为我这里采用的是阿里云镜像加速器,所以我直接在阿里云中搜索相关镜像路径],点击"详情"查看公网拉取路径 2.拉取镜像 docker pull registry. ...
- 【译文】用Spring Cloud和Docker搭建微服务平台
by Kenny Bastani Sunday, July 12, 2015 转自:http://www.kennybastani.com/2015/07/spring-cloud-docker-mi ...
随机推荐
- CMUSphinx Learn - Before you start
Before you start 开始之前 Before you start the development of the speech application, you need to consid ...
- 异步多线程 Task理解
一.简介 Task是.NET Framework4.0 TPL(任务并行库)提供的新的操作线程池线程的封装类.它提供等待.终止(取消).返回值.完成通知.失败通知.控制执行的先后次序等优化线程操作功能 ...
- 如何判断ScrollView滑动方向
1/判断滚动视图左右滚动 { CGFloat startContentOffsetX;//滚动开始的坐标 CGFloat willEndContentOffsetX; //滚动即将停止的坐标 CGFl ...
- [mobile]监听手机mobile上面软键盘的回车[enter]事件
$(document).keypress(function(e) { if(e.which == 13) { if(!$(".qaSearchInput").val()) { Hn ...
- gcc 6.0编译opencv出错
在编译opencv3.2时候,出现下面错误: cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_NE ...
- NLog配置JsonLayout中文输出为unicode问题
日志输出现要改为json格式,网上查询layout配置为JsonLayout就可以了,结果发现输出中文为unicode编码,看很多文章说配置encode="false"就可以了,结 ...
- Winform生成安装程序时配置自启动
1.右击安装编辑程序,在“视图”菜单中,选择“注册表”. 2.创建“键”:HKCU\Software\Microsoft\Windows\CurrentVersion\Run 3.右键Run,新建“字 ...
- AngularJs创建一个带参数的自定义方法
学习这篇之前,先要从这篇<AngularJs创建自定义Service>http://www.cnblogs.com/insus/p/6773894.html 开始. 看看: app.con ...
- C# Enum枚举类型操作扩展类
使用示例: using System.ComponentModel; namespace SchoolEnterpriseManageSys.Enum { /// <summary> // ...
- Java Calender 类详解
一. 如何创建 Calendar 对象 Calendar 是一个抽象类, 无法通过直接实例化得到对象. 因此, Calendar 提供了一个方法 getInstance,来获得一个Calendar ...