Docker 方式安装 RabbitMQ (ribbitmq linux 部署)

2019-08-14 11:27:49 浏览数 (1)

1. 查找镜像:(management 版本的镜像才有管理界面)

代码语言:javascript复制
docker search rabbitmq:management

2. 拉取镜像:

代码语言:javascript复制
docker pull docker.io/macintoshplus/rabbitmq-management

3. 查看已下载的镜像,最后一个就是。

4. 重命名该镜像为 rabbitmq。这一步可以不作,我只是喜欢简短的名字。

镜像重命名见文章 : Docker 镜像 重命名

此时镜像已更名为 rabbitmq:

5. 启动容器:

代码语言:javascript复制
 docker run -d --hostname jiangyu-rabbit --name rabbitmq -e RABBITMQ_DEFAULT_USER=jiangyu -e RABBITMQ_DEFAULT_PASS=loveU -p 15672:15672 rabbitmq

参数说明:

代码语言:javascript复制
# 后台运行
-d 

# 设置主机名
--hostname jiangyu-rabbit

# 给容器取名为 rabbitmq
--name rabbitmq 

# rabbitmq 账号设置为 jiangyu
-e RABBITMQ_DEFAULT_USER=jiangyu 

# rabbitmq 密码设置为 loveU
-e RABBITMQ_DEFAULT_PASS=loveU 

# 端口映射,格式为   浏览器访问端口:容器端口
-p 15672:15672 

# 最后这个是启动容器使用的镜像,镜像名或镜像ID都可
rabbitmq

查看容器运行日志:

代码语言:javascript复制
docker logs rabbitmq

6. 浏览器访问:http://ergouzi.fun:15672 (我的服务器已经备案域名,可直接使用域名访问)

7. 输入账号 jiangyu 密码 loveU 登陆成功:

至此,安装运行已经 OK 了。

8. 查看 权限。

PS:在网上看到可用此命令授权:

代码语言:javascript复制
rabbitmqctl set_permissions -p / jiangyu ".*" ".*" ".*"

关于授权更多见 rabbitmq 文档:https://www.rabbitmq.com/access-control.html

但我并没有用执行这一条命令,查看已经有权限了:

9. 运行成功后,在项目中却连接不上,报错:

代码语言:javascript复制
An unexpected connection driver error occured
java.net.SocketException: Socket Closed
	at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.8.0_45]
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) ~[na:1.8.0_45]
...

解决方法见文章 :解决:c.r.c.impl.ForgivingExceptionHandler : An unexpected connection driver error occured

PS:更多详情见 docker 文档:https://hub.docker.com/_/rabbitmq/

0 人点赞