Docker容器安装RabbitMQ
Docker容器安装RabbitMQ
准备资料
erlang的rpm安装包 https://github.com/rabbitmq/erlang-rpm/releases

rabbitmq的rpm安装包 https://github.com/rabbitmq/rabbitmq-server/releases

jdk,官网下载
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的更多相关文章
- Docker容器安装配置SQLServer服务(Linux)
一:前言 随着不断的对Docker容器的实践和学习,越来越觉得容器的强大,把 SQL Server 数据库服务放在docker容器中,比你自己在宿主服务器上面安装配置一个SQL Server服务器是要 ...
- linux --- 9. docker 容器 和 rabbitmq 队列
一. docker 容器 1.docker是什么? .linux下容器技术有很多,docker是做的最杰出的一款 .docker能够支撑阿里双十一,京东618的业务,说明,性能,安全性不得差 .doc ...
- Docker 尝试安装rabbitmq实践笔记
docker pull rabbitmq 自定義的rabbitmq Dockerfile # base image FROM rabbitmq:3.7-management # running req ...
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- docker容器安装及使用技巧
关于docker前言 A)首先是关于虚拟化 虚拟化我们可以简单的理解为一种资源管理方式.有如下几种虚拟化的方式: 1.完全虚拟化:对底层硬件实现完全的虚拟.例如:Vmware Workstation ...
- docker容器安装vi (一般容器都是Debian GNU/Linux 9)
在使用docker容器时,同时你docker里的系统正好是debian或ubuntu的时候,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要 ...
- Docker 容器安装及常用基础命令
为什么用docker 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具有众多的优势. Docker 在如下几个方面具有较大的优势: 更快速的交付和部署 Docker在整个开发周期都可以 ...
- docker 中安装 rabbitMQ
安装rabbitMQ的命令 docker run -d --hostname my-rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RAB ...
- Docker容器安装
使用脚本安装 Docker 1.使用 sudo 或 root 权限登录 Centos. 2.确保 yum 包更新到最新. $ sudo yum update 3.执行 Docker 安装脚本. $ c ...
随机推荐
- 项目-MyBlog
项目 地址:https://gitee.com/zwtgit/my-blog 由Docker + SpringBoot2.0 + Mybatis + thymeleaf 等技术实现, 功能齐全.部署简 ...
- Java学习day34
注解(Annotation):是从JDK5.0开始引入的新技术: 作用:不是程序本身,可以对程序作出解释:可以被其他程序(比如编译器等)读取 格式:注解是以"@注释名"在代码中存在 ...
- 一键智能Mock,你值得拥有
大家好呀,我是一名苦逼的前端开发工程师,为啥苦逼呢,这不,项目下周就要上线了,但是后端还没给我接口,没有接口我就无法调试,工作停滞不前,我也只能坐着干着急. 我报告给了我的老板山哥: 老板,这后端 ...
- LevelDB 学习笔记2:合并
LevelDB 学习笔记2:合并 部分图片来自 RocksDB 文档 Minor Compaction 将内存数据库刷到硬盘的过程称为 minor compaction 产出的 L0 层的 sstab ...
- HttpRunner的PB序列化工具类解决方案(python3)
背景 年初的时候团队内落地了HttpRunner3框架,简单介绍下:HttpRunner 是一款由python开发的面向 HTTP(S) 协议的开源通用测试框架,用例脚本为 YAML/JSON 格式, ...
- Rancher无法登录 容器报错X509:certificate has expired or is not ye valid
在某天需要发布新版本的时候,发现rancher无法登录,于是到服务器上查看rancher日志,发现以下内容: 参考rancher文档中独立容器Rancher Server证书更新解决 1. 进入容器 ...
- GO 前后端分离开源后台管理系统 Gfast v2.0.4 版发布
更新内容:1.适配插件商城,开发环境从后台直接安装插件功能:2.代码生成细节修复及功能完善(支持生成上传文件.图片及富文本编辑器功能):3.增加swagger接口文档生成:4.更新goframe版本至 ...
- 在 ESXi 主机上关闭无响应的虚拟机电源
使用 ESXi 命令行 使用 SSH 以 root 身份登录到 ESXi. 通过运行以下命令获取所有已注册虚拟机的列表,由其 VMID 和显示名称标识: vim-cmd vmsvc/get ...
- 攻防世界-MISC:Test-flag-please-ignore
这是攻防世界MISC高手进阶区的题目,题目如下 点击下载附件一,解压后得到一个文本文件,打开后得到一串字符串如下: 通过观察,发现是16进制的字符串(由0~f)的字符串组成,尝试将16进制转字符串,结 ...
- Spring 源码(7)Spring的注解是如何解析的?
上一篇 https://www.cnblogs.com/redwinter/p/16196359.html 介绍了BeanFactoryPostProcessor的执行过程,这篇文章介绍Spring中 ...