===============================================

2018/5/13_第1次修改                       ccb_warlock

===============================================

rabbitmq作为开源的消息中间件目前已经被广泛应用,由于正在进行服务的容器化,所以rabbitmq的容器部署也提上日程。

由于以swarm作为容器的基础框架,故本篇整理stack中部署容器服务的方式。


一、前提条件


 二、部署rabbitmq

 2.1 创建映射的本地目录

mkdir -p /usr/docker-vol/rabbitmq/conf

 2.2 增加配置文件rabbitmq.config

vim /usr/docker-vol/rabbitmq/conf/rabbitmq.config

为了允许guest用户能通过任意ip访问manager界面,故在rabbitmq.config中增加下面的信息。

[
{rabbit,
[
{loopback_users, []}
]}
].

 2.3 编辑rabbitmq-stack.yml

vim /root/rabbitmq-stack.yml

# 添加下面的内容,wq保存

version: '3'
services: rabbitmq-mananger:
image: rabbitmq:mananger # 这里获取带有manager页面的rabbitmq的镜像
environment:
- TZ=Asia/Shanghai # 设定容器的时区为亚洲/上海
volumes:
# rabbitmq的配置文件
- /usr/docker-vol/rabbitmq/conf/rabbitmq.config:/etc/rabbitmq/rabbitmq.config
deploy:
replicas: 1
restart_policy:
condition: on-failure
ports:
- 4369:4369
- 5671:5671
- 5672:5672
- 15671:15671
- 15672:15672
- 25672:25672
networks:
- net01 networks:
net01:
external: true # 使用外部同名网络net01,如果对网络没有要求可以去掉networks信息,docker会生成一个默认网络给该服务栈

 2.4 创建服务栈

1)命令方式

cd
docker stack deploy -c rabbitmq-stack.yml rabbitmq-stack

2)portainer界面方式(推荐)

登录portainer(如果是根据上面的教程部署的portainer,浏览器访问http://宿主机IP:9000,在stack中增加rabbitmq-stack.yml文件中的内容)

PS.如果需要保证安全,可以不增加配置文件是guest账户不能被其他ip登录manager页面,并创建一个新的管理员账户进行管理。

通过portainer进入rabbitmq容器的命令行,接着运行下面的命令。

# 创建admin用户(密码也为admin)

rabbitmqctl  add_user  admin  admin

# 设置admin为超级管理员

rabbitmqctl  set_user_tags  admin  administrator

# 角色说明:

  • administrator:超级管理员。可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。
  • monitoring:监控者。可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
  • policymaker:策略制定者。可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息。与administrator的对比,administrator能查看节点的相关信息
  • management:普通管理者。仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。
  • 其他:无法登陆管理控制台,通常就是普通的生产者和消费者。

# 配置初始的命名空间/给admin

rabbitmqctl set_permissions -p / admin "admin-*" ".*" ".*"

docker stack 部署 rabbitmq 容器的更多相关文章

  1. docker stack 部署容器监控方案(cAdvisor、Prometheus、Grafana)

    =============================================== 2018/7/8_第1次修改                       ccb_warlock === ...

  2. docker stack 部署 mysql 5.6

    =============================================== 2018/7/1_第1次修改                       ccb_warlock === ...

  3. docker stack 部署 filebeat

    =============================================== 2018/7/21_第3次修改                       ccb_warlock 更新 ...

  4. docker stack 部署 redis

    =============================================== 2019/4/16_第2次修改                       ccb_warlock 更新 ...

  5. docker stack 部署 seafile(http)

    =============================================== 2018/5/13_第1次修改                       ccb_warlock == ...

  6. docker stack 部署 mssql

    =============================================== 2019/12/8_第1次修改                       ccb_warlock == ...

  7. docker上部署nginx容器80端口自动转443端口

    拉去nginx镜像 # docker pull nginx 运行nginx容器config用于拷贝nginx配置文件 # docker run --name nginxconfig -d docker ...

  8. docker上部署rabbitmq

    1.docker search rabbitmq 2.docker pull rabbitmq:3.6 3.docker run -d -p 5672:5672 -p 15672:15672 --na ...

  9. docker stack 部署nginx

    =============================================== 2018/7/29_第1次修改                       ccb_warlock == ...

随机推荐

  1. 【算法复习】codevs1022 匈牙利算法

    题目描述 Description 有一个N×M的单位方格中,其中有些方格是水塘,其他方格是陆地.如果要用1×2的矩阵区覆盖(覆盖过程不容许有任何部分重叠)这个陆地,那么最多可以覆盖多少陆地面积.   ...

  2. 【CF995F】Cowmpany Cowmpensation(动态规划,拉格朗日插值)

    [CF995F]Cowmpany Cowmpensation(多项式插值) 题面 洛谷 CF 题解 我们假装结果是一个关于\(D\)的\(n\)次多项式, 那么,先\(dp\)暴力求解颜色数为\(0. ...

  3. AFO NOI2018退役——菜鸡一直是菜鸡

    游记DAY -INF连续几天的模拟让我确信我就是菜鸡.以及相信yxd,sjq,cyl神犇一定能够稳了. DAY 0报道,天很热热热热热热热热热. DAY 1开幕式,杜子德很热热热热热热热热热. DAY ...

  4. uoj35 后缀排序

    题目链接:http://uoj.ac/problem/35 这是一道模板题. 读入一个长度为 n 的由小写英文字母组成的字符串,请把这个字符串的所有非空后缀按字典序从小到大排序,然后按顺序输出后缀的第 ...

  5. 洛谷 P3205 [HNOI2010]合唱队 解题报告

    P3205 [HNOI2010]合唱队 题目描述 为了在即将到来的晚会上有更好的演出效果,作为AAA合唱队负责人的小A需要将合唱队的人根据他们的身高排出一个队形.假定合唱队一共N个人,第i个人的身高为 ...

  6. vmware中centos7设置静态IP

    1.vmware—>Edit—>Virtual Network Editor,选中vmnet8-Nat设置,查看网关IP 2.在centos中设置: vi /etc/sysconfig/n ...

  7. go递归打印指定目录下的所有文件及文件夹

    func treedir(fpath string){ // 获取fileinfo if finfo,err := os.Stat(fpath); err == nil { // 判断是不是目录 如果 ...

  8. Could not update Activiti database schema: unknown version from database: '5.20.0.1'

    转: Could not update Activiti database schema: unknown version from database: '5.20.0.1' 2017年11月22日 ...

  9. Keepalived LVS-DR单网络双活双主配置模式

    Keepalived LVS-DR单网络双活双主配置模式 Linux就该这么学 今天 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.LV ...

  10. Nginx反向代理websocket配置实例

    最近有一个需求,就是需要使用 nginx 反向代理 websocket,经过查找一番资料,目前已经测试通过,本文只做一个记录 复制代码 代码如下: 注: 看官方文档说 Nginx 在 1.3 以后的版 ...