资源

RabbiMQ的相关镜像为:https://hub.docker.com/_/rabbitmq/,查看tags,可查看版本信息。


安装


#拉取rabbit镜像 (management,表明是带web管理界面的,便于管理)

docker search rabbitmq:3.7.8-management

docker pull rabbitmq:3.7.8-management

docker images

#用于挂载rabbit数据文件 (mkdir -p :递归创建目录,即使上级目录不存在,会按目录层级自动创建目录)

mkdir -p /home/rabbitmq/data

#修改image的tag

docker tag d69a5113ceae 192.168.1.164:5000/rabbitmq

#推送docker私服

docker push 192.168.1.164:5000/rabbitmq


启动


docker run -di \

--hostname my-rabbitmq \

--name my-rabbitmq \

--restart always \

-v /home/rabbitmq/data:/var/lib/rabbitmq \

-p 5672:5672 \

-p 15672:15672 \

-e RABBITMQ_DEFAULT_VHOST=my_vhost \

-e RABBITMQ_DEFAULT_USER=admin \

-e RABBITMQ_DEFAULT_PASS=123456 \

192.168.1.164:5000/rabbitmq:latest

-di:以守护进程方式在后台运行 --hostname:主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名)             设置容器的主机名,仅本机可见。             这种方式是写到/etc/hostname ,以及/etc/hosts 文件中,作为容器主机IP的别名,并且将显示在容器的bash中。             不过这种方式设置的主机名将不容易被容器之外可见。这将不会出现在 docker ps 或者 其他的容器的/etc/hosts 文件中。 --name:指定容器名 #-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号) #-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名RABBITMQ_DEFAULT_PASS:默认用户名的密码) #-v 映射目录或文件,数据持久化到主机目录;



防火墙设置


#编辑防火墙配置文件 vi /etc/sysconfig/iptables -A IN_public_allow -p tcp -m tcp --dport 5672 -m conntrack --ctstate NEW -j ACCEPT -A IN_public_allow -p tcp -m tcp --dport 15672 -m conntrack --ctstate NEW -j ACCEPT #重启防火墙 systemctl restart iptables  #没有/etc/sysconfig/iptables 文件则 firewall-cmd --zone=public --add-port=15672/tcp --permanent firewall-cmd --zone=public --add-port=5672/tcp --permanent #重启防火墙 firewall-cmd --reload



访问

在浏览器中输入http://192.168.1.164:15672,会有登录界面,用户名和密码是admin/123456

docker安装rabbitmq_docker



docker安装rabbitmq_docker_02