Izhuceul 发表于 2017-12-5 23:34:56

docker搭建rabbitmq

Docker部署rabbitmq
  1、   准备docker环境:
  # yum-yinstalldocker
  # docker ps
  @如果有输出
  CONTAINER ID   IMAGECOMMANDCREATED                  PORTS      
  证明已经安装完毕。
  
  2、   部署外网环境
  # dockersearchrabbitmq
  
  letsxo/rabbitmq      RabbitMQ with Management and MQTT plugins.
  @选择这一个,因为他又web管理和MQTT。
  # dockerpull 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 searchrabbitmq
  # docker pull letsxo/rabbitmq
  # docker images
  letsxo/rabbitmq latest 93a7eefb0865 2 weeks ago         38.6MB
  # docker save93a7eefb0865 > rabbitmq.tar
  
  @将rabbitmq.tar拷贝到内网服务器:
  # scp –P port rabbitmq.taruser@ip:path
  如果是默认的22端口,-P就不用了。
  在内网服务器上将拷贝来的rabbitmq.tar文件导入为镜像:
  # docker load < rabbitmq.tar
  
  @打标签:
  # docker tag   93a7eefb0865rabbitmq: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就会一直读取固定目录中的数据了
页: [1]
查看完整版本: docker搭建rabbitmq