docker-compose部署rabbitmq集群的问题

1、首先在启动完rabbitmq集群后还没有启动完成就去页面访问,发现访问不通,以为是端口没有开放导致的,然后就把防火墙打开了,然后开放端口,还是不行,然后过了一会又可以访问了,再次启动rabbitmq容器的时候报以下错误
在进行docker容器创建的时候有可能会遇到奇葩的问题
[root@localhost ~]# docker run -p 8081:80 --name nginx2 -d docker.io/nginx
468e3c4e47ed2c5742d8cba31bb94610a1fa47fc6618e9292df8a8b683a09a3f
/usr/bin/docker-current: Error response from daemon: driver failed programming external connectivity on endpoint nginx2 (5d488c48b27991e34dd1d1fb24c1bbb29c286c7d4ccb27a0cbb2191606a87290): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8081 -j DNAT --to-destination 172.17.0.2:80 ! -i docker0: iptables: No chain/target/match by that name.
(exit status 1)).
在这里插入图片描述
原因:在我们启动了Docker后,我们再对防火墙firewalld进行操作,就会发生上述报错,
详细原因:docker服务启动时定义的自定义链DOCKER,当 centos7 firewall 被清掉时,
firewall的底层是使用iptables进行数据过滤,建立在iptables之上,这可能会与 Docker 产生冲突。
当 firewalld 启动或者重启的时候,将会从 iptables 中移除 DOCKER 的规则,从而影响了 Docker 的正常工作。
当你使用的是 Systemd 的时候, firewalld 会在 Docker 之前启动,但是如果你在 Docker 启动之后操作 firewalld ,你就需要重启 Docker 进程了。
解决方法:输入指令 systemctl restart docker 重启docker服务及可重新生成自定义链DOCKER
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值