RabbitMQ(一)、centos7使用docker安装rabbitmq

1、安装docker

安装docker需要 centos 的内核版本高于 3.10

这里我的linux版本是centos7,查看内核版本的命令:
[root@VM_0_11_centos ~]# uname -r
3.10.0-957.21.3.el7.x86_64
升级软件包及内核的命令:
[root@VM_0_11_centos ~]# yum update
安装docker:
[root@VM_0_11_centos ~]# yum install docker
查看版本号:
[root@VM_0_11_centos ~]# docker -v
Docker version 1.13.1, build 7f2769b/1.13.1
以上这样就表明我们的docker已经安装成功了,接下来我们来启动docker
启动docker:
[root@VM_0_11_centos ~]# systemctl start docker

2、安装rabbitmq

不论安装什么镜像,rabbitmq也好,mysql 也好,我们都可以去docker官网 https://hub.docker.com 去搜索对应的镜像。比如这里我们要安装rabbitmq,可以搜索rabbitmq

点击进去,发现有好多个列表,为了我们更直观的查看rabbitmq的各种交换机、队列等信息,我们选择后缀带 -management的,否则登录后台时 会登录不上。

选择完毕 docker 安装的版本之后,我们现在开始拉取镜像
我们在拉取的时候,要加上我们刚刚选择的版本号,就是在命令后边紧跟上 :版本号

[root@VM_0_11_centos ~]# docker pull rabbitmq:3.7.23-management

执行完命令后,会下载一堆东西,下载完成后,我们查看是否拉取镜像成功:

[root@VM_0_11_centos ~]# docker images
REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE
docker.io/rabbitmq   3.7.23-management   c97013c4481c        6 days ago          179 MB

这样就代表我们刚刚拉取的rabbitmq 成功啦! 如果不小心下错版本了,也没关系,我们可以通过镜像的 IMAGE ID 来删除

[root@VM_0_11_centos ~]# docker rmi -f c97013c4481c       

删除成功后,重新拉取就可以了。

3、操作rabbitmq 镜像

镜像拉取下来之后,外界怎么连接呢,很简单,只需要一个命令来运行这个镜像,这个镜像就会生成一个docker的容器,
我们对容器的启动停止 就是对rabbitmq的启动停止。

[root@VM_0_11_centos ~]# docker run --name myRabbitMQ -d -p 5672:5672 rabbitmq:3.7.23-management
92b8c728e8b51b480a14d52c6de5e75cba11651bcc3c805ce270e7df5cebd504

[root@VM_0_11_centos ~]# docker run --name myRabbitMQManagement -d -p 15672:15672 rabbitmq:3.7.23-management
55a05b43131711104dd30bd72b5ce76fb8d5536df4db1441bdfec5c1ee490119

--name 的意思是:给我们这个容器起一个名字
-d 的意思是:后台运行
-p 5672:5672 的意思是:将我们服务器的5672端口映射到 rabbitmq 的端口,以便外界可以访问到
所以,我们的一个镜像可以启动多次,只需要指定不同的端口号 和 容器的名字的就可以啦

查看docker正在运行的容器,就会发现我们刚刚的都已经启动成功了:

[root@VM_0_11_centos ~]# docker ps
CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS              PORTS                                                                     NAMES
55a05b431317        rabbitmq:3.7.23-management   "docker-entrypoint..."   6 seconds ago       Up 4 seconds        4369/tcp, 5671-5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp   myRabbitMQManagement
92b8c728e8b5        rabbitmq:3.7.23-management   "docker-entrypoint..."   4 minutes ago       Up 4 minutes        4369/tcp, 5671/tcp, 15671-15672/tcp, 25672/tcp, 0.0.0.0:5672->5672/tcp    myRabbitMQ

不要忘记了,在防火墙开启5672端口 和 15672 端口,前者是我们在代码里边 连接rabbitmq 的端口,后者是我们在访问管理界面时使用的端口。

[root@VM_0_11_centos ~]# firewall-cmd --zone=public --add-port=5672/tcp --permanent
success
[root@VM_0_11_centos ~]# firewall-cmd --zone=public --add-port=15672/tcp --permanent
success

然后重启防火墙

[root@VM_0_11_centos ~]# firewall-cmd --reload
success

然后就可以访问了,输入服务器的IP:15672,是15672 而不是 5672 ,rabbitmq 默认的用户名和密码 都是 guest

猜你喜欢

转载自www.cnblogs.com/linzichen-cn/p/12103086.html