Docker容器安装RabbitMQ

准备资料

1、创建容器

  • -i 交互模式
  • -d 后端运行
  • -h 容器的hostname
  • --name 容器名
  • --network 网卡
  • --ip IP地址
  • -p 端口映射
  • --privileged=true 和 /usr/sbin/init 为特权模式参数
[root@localhost Tools]# docker run -i -d -h rabbitmq --name rabbitmq --net docker-br0 --ip 172.127.0.202 -p 5672:5672 -p 15672:15672 --privileged=true centos:7 /usr/sbin/init

2、进入容器更新yum并安装常用工具包及erlang依赖包

[root@localhost ~]# docker exec -it rabbitmq /bin/bash
[root@rabbitmq /]# yum -y update
[root@rabbitmq /]# yum -y install vim zip unzip bzip2 net-tools wget gcc glibc-devel make ncurses-devel openssl-devel xmlto perl logrotate socat

3、上传rpm包并配置utf-8编码字符集

  • docker cp 必须在容器外执行
[root@rabbitmq /]# mkdir Tools
  • 容器外,一般可以另开一个xshell页面操作
[root@localhost Tools]# docker cp jdk-8u321-linux-x64.tar.gz rabbitmq:/Tools/
[root@localhost Tools]# docker cp rabbitmq-server-3.9.14-1.el7.noarch.rpm rabbitmq:/Tools/
[root@localhost Tools]# docker cp erlang-23.3.4.11-1.el7.x86_64.rpm rabbitmq:/Tools/
  • 配置编码字符集
[root@rabbitmq /]# vim /etc/profile
[root@rabbitmq /]# source /etc/profile

  • 解决退出容器后重新进入编码字符集失效的问题

    每次进入容器都会加载/root/.bashrc资源,因此在此文件中执行source /etc/profile可实现加载配置失效问题
[root@rabbitmq /]# vim /root/.bashrc
[root@rabbitmq /]# cat /root/.bashrc | grep source

4、安装jdk

  • -C 指定解压路径
[root@nginx Tools]# tar -zxvf jdk-8u321-linux-x64.tar.gz -C /usr/local/
  • 配置环境变量
[root@rabbitmq Tools]# vim /etc/profile
[root@rabbitmq Tools]# source /etc/profile
[root@rabbitmq Tools]# cat /etc/profile | grep JAVA_HOME

  • 验证
[root@rabbitmq Tools]# java -version

5、安装erlang

[root@rabbitmq Tools]# rpm -ivh erlang-23.3.4.11-1.el7.x86_64.rpm

  • 验证
[root@rabbitmq Tools]# erl -version

6、安装rabbitmq

[root@rabbitmq Tools]# rpm -ivh rabbitmq-server-3.9.14-1.el7.noarch.rpm

7、启动rabbitmq插件

[root@rabbitmq Tools]# whereis rabbitmq
[root@rabbitmq Tools]# cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.9.14/sbin/
[root@rabbitmq sbin]# rabbitmq-plugins enable rabbitmq_management

8、修改配置文件

  • rabbitmq.conf没有则新建
  • rabbitmq.conf必须为.conf格式
[root@rabbitmq sbin]# vim /etc/rabbitmq/rabbitmq.conf
[root@rabbitmq sbin]# vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.9.14/sbin/rabbitmq-defaults

listeners.tcp.default = 5672 #数据管理端口
management.tcp.port = 15672 #界面管理端口
management.tcp.ip = 0.0.0.0

9、启动rabbitmq

[root@rabbitmq sbin]# ./rabbitmq-server > /home/rabbitmq/log/server.log 2>&1 &
[root@rabbitmq sbin]# ps -ef | grep rabbit

10、配置统一的cookie

  • 查找
[root@rabbitmq sbin]# cat /var/lib/rabbitmq/.erlang.cookie
[root@rabbitmq sbin]# cat /root/.erlang.cookie

  • 任选一个配置另一个文件的cookie值

    需先调整文件的读写权限,改完后再将权限收回
[root@rabbitmq sbin]# ll /root/.erlang.cookie
[root@rabbitmq sbin]# chmod 755 /root/.erlang.cookie
[root@rabbitmq sbin]# vim /root/.erlang.cookie
[root@rabbitmq sbin]# chmod 400 /root/.erlang.cookie
[root@rabbitmq sbin]# cat /var/lib/rabbitmq/.erlang.cookie
[root@rabbitmq sbin]# cat /root/.erlang.cookie

  • 修改完后需重启服务
[root@rabbitmq sbin]# ps -ef | grep rabbit
[root@rabbitmq sbin]# kill -9 1094
[root@rabbitmq sbin]# ./rabbitmq-server &

10、创建用户

默认用户guest、密码guest只能用localhost登录

[root@rabbitmq sbin]# rabbitmqctl add_user admin 17562yxp.
[root@rabbitmq sbin]# rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
[root@rabbitmq sbin]# rabbitmqctl set_user_tags admin administrator

11、验证

12、其他

[root@rabbitmq sbin]# rabbitmqctl stop  # 停止服务

Docker容器安装RabbitMQ的更多相关文章

  1. Docker容器安装配置SQLServer服务(Linux)

    一:前言 随着不断的对Docker容器的实践和学习,越来越觉得容器的强大,把 SQL Server 数据库服务放在docker容器中,比你自己在宿主服务器上面安装配置一个SQL Server服务器是要 ...

  2. linux --- 9. docker 容器 和 rabbitmq 队列

    一. docker 容器 1.docker是什么? .linux下容器技术有很多,docker是做的最杰出的一款 .docker能够支撑阿里双十一,京东618的业务,说明,性能,安全性不得差 .doc ...

  3. Docker 尝试安装rabbitmq实践笔记

    docker pull rabbitmq 自定義的rabbitmq Dockerfile # base image FROM rabbitmq:3.7-management # running req ...

  4. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  5. docker容器安装及使用技巧

    关于docker前言 A)首先是关于虚拟化 虚拟化我们可以简单的理解为一种资源管理方式.有如下几种虚拟化的方式: 1.完全虚拟化:对底层硬件实现完全的虚拟.例如:Vmware Workstation ...

  6. docker容器安装vi (一般容器都是Debian GNU/Linux 9)

    在使用docker容器时,同时你docker里的系统正好是debian或ubuntu的时候,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要 ...

  7. Docker 容器安装及常用基础命令

    为什么用docker 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具有众多的优势. Docker 在如下几个方面具有较大的优势: 更快速的交付和部署 Docker在整个开发周期都可以 ...

  8. docker 中安装 rabbitMQ

    安装rabbitMQ的命令 docker run -d --hostname my-rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RAB ...

  9. Docker容器安装

    使用脚本安装 Docker 1.使用 sudo 或 root 权限登录 Centos. 2.确保 yum 包更新到最新. $ sudo yum update 3.执行 Docker 安装脚本. $ c ...

随机推荐

  1. Mybatis-plugins分页助手实现查询数据分页

    其他具体代码接上文->mybatis自定义处理器 1.导入坐标 <dependency> <groupId>com.github.pagehelper</group ...

  2. 帝国CMS怎样删除清空数据库记录?

    我用的帝国CMS,删除已经发表的文章和栏目后,后面新发的栏目和文章ID并不会重新从1开始,而是接着已经删除的文章和栏目ID,那么,怎样让后面发的文章和栏目ID重新从1开始呢? 首先,做任何重要修改前先 ...

  3. [资源] 桃宝上十几块买的C#教程网盘

    我粗略的看了下觉得挺好的,分享给大家 链接:https://pan.baidu.com/s/1iHuLUXde4_L7NB-Zw9JWNg 提取码:1314

  4. Ant Design Pro V5 与 IdentityServer 实现 Password 模式的登录

    最近处于休息状态,想趁着休息时间,为自己做一个后台. 后端框架选用了 Abp.之前公司使用了一些自研的框架,但由于人力资源有限,后期框架的升级及维护都是比较耗时,这次干脆直接使用Abp,即省心又能快速 ...

  5. Pytest系列(一)初次了解

    在之前,我分享过unittest系列,后来有很多人问我,能不能出pytest的教程,正好最近在整理pytest相关的资料,那么,就趁着这个机会,去和大家分享一下pytest系列. pytest是一个非 ...

  6. Java语言学习day07--7月6日

    今日内容介绍1.流程控制语句switch2.数组 ###01switch语句解构​ * A:switch语句解构 * a:switch只能针对某个表达式的值作出判断,从而决定程序执行哪一段代码. * ...

  7. 2021.08.03 BZOJ 疯狂的馒头(并查集)

    2021.08.03 BZOJ 疯狂的馒头(并查集) 疯狂的馒头 - 题目 - 黑暗爆炸OJ (darkbzoj.tk) 重点: 1.并查集的神奇运用 2.离线化 题意: 给一个长为n的序列,进行m次 ...

  8. 2021.07.20 CF1477A Nezzar and Board(最大公因数,未证)

    2021.07.20 CF1477A Nezzar and Board(最大公因数,未证) CF1477A Nezzar and Board - 洛谷 | 计算机科学教育新生态 (luogu.com. ...

  9. 国产化之银河麒麟.netcore3.1访问https服务的两个问题

    背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,数据库使用达梦V8,CPU平台的范围包括x64.龙芯.飞腾.鲲鹏等. 考虑到这些基础产品对.NETCore的支持,最终选择了3.1版 ...

  10. SerialPort-4.0.+ 使用说明(Kotlin版本)

    SerialPort-4.0.+ 项目官网 Java版本使用说明 介绍 SerialPort 是一个开源的对 Android 蓝牙串口通信的轻量封装库,轻松解决了构建自己的串口调试APP的复杂程度,让 ...