WSL 安装 RabbitMQ

最近在 WSL 上安装 RabbitMQ 遇到了一个问题,折腾了很久,在此记录一下。

下载和安装

下载和安装直接去官网看教程即可,很详细,基本复制粘贴命令行即可。

https://www.rabbitmq.com/download.html

配置

安装完之后需要启用一个 RabbitMQ 插件才能访问管理页面。

ultravires@x:/mnt/c/Users/ultravires$ whereis rabbitmq
rabbitmq: /usr/lib/rabbitmq /etc/rabbitmq
ultravires@x:/usr/lib/rabbitmq$ cd /usr/lib/rabbitmq/bin/
ultravires@x:/usr/lib/rabbitmq/bin$ ls
erl_crash.dump     rabbitmq-diagnostics  rabbitmq-plugins  rabbitmq-server   rabbitmqctl
rabbitmq-defaults  rabbitmq-env          rabbitmq-queues   rabbitmq-upgrade
ultravires@x:/usr/lib/rabbitmq/bin$ sudo rabbitmq-plugins enable rabbitmq_management
ultravires@x:/usr/lib/rabbitmq/bin$ sudo rabbitmq-plugins list
[sudo] password for ultravires:
Listing plugins with pattern ".*" ...
 Configured: E = explicitly enabled; e = implicitly enabled
 | Status: * = running on rabbit@x
 |/
[  ] rabbitmq_amqp1_0                  3.8.12
[  ] rabbitmq_auth_backend_cache       3.8.12
[  ] rabbitmq_auth_backend_http        3.8.12
[  ] rabbitmq_auth_backend_ldap        3.8.12
[  ] rabbitmq_auth_backend_oauth2      3.8.12
[  ] rabbitmq_auth_mechanism_ssl       3.8.12
[  ] rabbitmq_consistent_hash_exchange 3.8.12
[  ] rabbitmq_event_exchange           3.8.12
[  ] rabbitmq_federation               3.8.12
[  ] rabbitmq_federation_management    3.8.12
[  ] rabbitmq_jms_topic_exchange       3.8.12
[E*] rabbitmq_management               3.8.12
[e*] rabbitmq_management_agent         3.8.12
[  ] rabbitmq_mqtt                     3.8.12
[  ] rabbitmq_peer_discovery_aws       3.8.12
[  ] rabbitmq_peer_discovery_common    3.8.12
[  ] rabbitmq_peer_discovery_consul    3.8.12
[  ] rabbitmq_peer_discovery_etcd      3.8.12
[  ] rabbitmq_peer_discovery_k8s       3.8.12
[  ] rabbitmq_prometheus               3.8.12
[  ] rabbitmq_random_exchange          3.8.12
[  ] rabbitmq_recent_history_exchange  3.8.12
[  ] rabbitmq_sharding                 3.8.12
[  ] rabbitmq_shovel                   3.8.12
[  ] rabbitmq_shovel_management        3.8.12
[  ] rabbitmq_stomp                    3.8.12
[  ] rabbitmq_top                      3.8.12
[  ] rabbitmq_tracing                  3.8.12
[  ] rabbitmq_trust_store              3.8.12
[e*] rabbitmq_web_dispatch             3.8.12
[  ] rabbitmq_web_mqtt                 3.8.12
[  ] rabbitmq_web_mqtt_examples        3.8.12
[  ] rabbitmq_web_stomp                3.8.12
[  ] rabbitmq_web_stomp_examples       3.8.12

访问

我遇到的问题就在这里:虽然 WSL 系统的 IP 地址和物理操作系统的 IP 地址是一样的,你可以使用 127.0.0.1:15672 访问管理页面。但是在使用代码进行连接的时候,远程 IP 地址必须是 WSL 的 IP 地址。不能使用 127.0.0.1 5672 进行连接!!!

ultravires@x:/usr/lib/rabbitmq/bin$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.23.159.155  netmask 255.255.240.0  broadcast 172.23.159.255
        inet6 fe80::215:5dff:fe13:fdf2  prefixlen 64  scopeid 0x20<link>
        ether 00:15:5d:13:fd:f2  txqueuelen 1000  (Ethernet)
        RX packets 10734  bytes 2712042 (2.7 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2448  bytes 1572765 (1.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 16547  bytes 4502270 (4.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 16547  bytes 4502270 (4.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

这里应该使用: 172.23.159.155

检查

发下上面的问题是通过 powershell 输入:

netstat -ano | findstr 5672

查看 5672 端口的连接状态,如果是 ESTABLISHED 才代表连接成功。如果是 SYN_SENT 代表请求连接的状态,这样是有问题的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值