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 ...
随机推荐
- C++---初识C++
C和C++的关系 C语言是结构化和模块化的语言, 面向过程. C++是在C语言的基础上, 增加了面向对象的机制, 并对C语言的功能进行了扩充. 变量的定义可以出现在程序中的任何行 提供了标准输入输出流 ...
- Golang 源码解读 01、深入解析 strings.Builder、strings.Join
strings.Builder 源码解析. 存在意义. 实现原理. 常用方法. 写入方法. 扩容方法. String() 方法. 禁止复制. 线程不安全. io.Writer 接口. 代码. stri ...
- 地铁系统ajax人性化操作
根据选择的城市不同,显示的地铁系统和线路图也不同
- OpenHarmony标准设备应用开发(二)——布局、动画与音乐
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点) 邢碌 上一章我们讲解了应用编译环境准备,设备编译环境准备,开发板烧录,将一个最简单的 OpenAtom OpenHar ...
- Codeforces Round #753 (Div. 3), problem: (D) Blue-Red Permutation
还是看大佬的题解吧 CFRound#753(Div.3)A-E(后面的今天明天之内补) - 知乎 (zhihu.com) 传送门 Problem - D - Codeforces 题意 n个数字,n ...
- 技术分享 | WEB 端常见 Bug 解析
对于 WEB 产品来说,有一些常见的 Bug,本章节挑选一些比较典型的 Bug 进行举例介绍. UI Bug 页面展示的时候,需要根据长度的边界值去设计用例进行验证. 一般来说都会有超长内容的验证 ...
- 攻防世界-MISC:base64÷4
这是攻防世界高手进阶区的第一题,题目如下: 点击下载附件一,发现是一个文本文档,打开后得到一串字符串 由题意猜测这些字符串应该是base16加密过的,写个脚本跑一下 import base64 s = ...
- 攻防世界-MISC:如来十三掌
这是攻防世界新手练习区的第三题,题目如下: 点击附件1下载,打开后内容如下: 没看懂是什么,还是参考一下WP吧.WP说去一个叫"与佛论禅"的网站,登进去后 发现是一个加解密网站,将 ...
- [python][flask] Flask 入门(以一个博客后台为例)
目录 1.安装 1.1 创建虚拟环境 1.2 进入虚拟环境 1.3 安装 flask 2.上手 2.1 最小 Demo 2.2 基本知识 3.解构官网指导 Demo 3.1 克隆与代码架构分析 3.2 ...
- 实战|Hadoop大数据集群搭建
一个执着于技术的公众号 前言 今天来为粉丝圆梦啦 话不多说,咱直接进入实战环节 实验环境: 主机名 IP地址 角色 qll251 192.16 ...