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 ...
随机推荐
- Uncaught TypeError: document.getElementsById is not a function
今天博主终于开始攻关javascript(俗称js)了,不过要注意了,它和java可是一丁点关系都没有,就像老婆饼和老婆一样. 下面就让我们来讨论一下博主这次犯下的低级错误吧 一.背景(解决方法在文末 ...
- 各系统升级openssh
修订号: [V1.0] 修订人: [陈土锋] 修订日期: [2019.06.04] 前言 该文档只适用用于服务器Redhat,centos,Ubuntu和suse系统的openssh升级.需要注意必须 ...
- 进程的概念及multiprocess模块的使用
一.进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本执行实体:在 ...
- mysql查询 if判断、case语句的使用等
一. 查询的数字转换为中文返回前端 1. 如果是0或1表状态等,可用: IF(字段 = 0, '否', '是') AS xxx 2. 如果是多个值,比如1,2,3可用: ELT(字段, '计划治理', ...
- js的split函数
split() 方法用于把一个字符串分割成字符串数组. separator 必需.字符串或正则表达式,从该参数指定的地方分割 stringObject. ***如果把空字符串 ("" ...
- Adobe Xd 练习
作业要求: 我的work: 下载练习: 2020_3/work.xd 参考教程: https://www.youtube.com/watch?v=dbpGJU4WL1U
- jointJS初使用随记
jointJs使用随记 1.下载与安装 前提:一个健康良好且干净的vue脚手架项目. 还是普遍的安装方式 yarn:yarn add jointjs npm:npm install jointjs 还 ...
- HTML中的Hack手段之条件注释
通常WEB的好处就是可以跨平台,但这个世界偏偏有个另类,就是IE浏览器.在平常做HTML设计时,有时需要为IE的表示差异而不得不使用一些Hack手段.条件注释就是这类手段之一. 条件注释是IE浏览器的 ...
- 忘记VMware vcenter的Administrator@vsphere.local密码
忘记VMware vcenter的Administrator@vsphere.local密码的解决办法一. 重置密码:ssh root@192.168.230.100Connecting to 192 ...
- 面试官:请用SQL模拟一个死锁
文章首发于公众号:BiggerBoy 有读者说面试被问到怎么用SQL模拟数据库死锁? 这位读者表示对Java中的死锁还是略知一二的,但是突然用SQL写死锁的案例之前还真没遇到过,这个问题没答上来.所以 ...