当前位置: 首页 > article >正文

记录一个容器间访问不通问题

docker-compose装了zookeeper和一个服务。

zk服务如下:

szxc-zk:
    image: "image.sd001.cn:30003/base/zookeeper:3.8"
    privileged: true
    environment:
    - "TZ=Asia/Shanghai"
    #- "ALLOW_ANONYMOUS_LOGIN=yes"
    - "ZOO_MY_ID=1"
    - "ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181"
    - "ZOO_CONF_DIR=/conf"
    volumes:
    - "/szxc/zookeeper/data:/data"
    - "/szxc/zookeeper:/datalog"
    - "/szxc/zookeeper/conf:/conf"
    container_name: szxc-zk
    ports:
      - "2181:2181"
      - "2888:2888"
      - "3888:3888"
    restart: always
    networks:
      - szxc_default
    #network_mode: "host"
    deploy:
     resources:
      limits:
        memory: "512M"
      reservations:
        memory: "20M"

1. 宿主机telnet本机ip 2181可以通

2. 本地无力机telnet宿主机ip 2181 可以通

3. 其他容器,在一个network下,用容器名 2181 不通

4. 其他容器,通过宿主机ip 2181 不通。

提示是no route to host。

traceroute能返回路由,但是有!X提示

各种折腾,后来想,应该是通过宿主机转发策略问题。所以才会有!X提示。

firewall-cmd --zone=public --add-port=2181/tcp --permanent
firewall-cmd --reload

宿主机放通了2181端口,果然可以使用了。

但是仍然无法使用内网network访问。

后来查到放通接口策略

firewall-cmd --zone=trusted --add-interface=br-24ddea6691ec

firewall-cmd --reload //重启防火墙

systemctl restart docker //重启docker,重要:不重启不生效

接口是ip a的网桥的名称

但是实测没有成功。

怀疑是需要删除所有重启重建,时间关系不再测试了。

重点:

容器访问需要宿主机转发,k8s集群一般都关掉了firewalld,但是docker-compose需要开启firewalld和iptables,否则端口路由会创建失败。所以网络数据包也会被防火墙拦截。


http://www.kler.cn/a/369740.html

相关文章:

  • Python练习(2)
  • Golang笔记——常用库context和runtime
  • 电商系统-用户认证(三)基于公钥解析JWT令牌
  • 多协议网关BL110钡铼6路RS485转MQTT协议云网关
  • 准备知识——旋转机械的频率和振动基础
  • 大一计算机的自学总结:位运算的应用及位图
  • 学习记录:js算法(七十八):划分字母区间
  • webpack常用插件有哪些??
  • .NET 8 中的 Mini WebApi
  • Pandas行转列与列装行
  • 本地docker部署中间件和应用
  • 使用 v-html 指令渲染的标签, 标签内绑定的 click 事件不生效
  • Linux开放端口问题(同一局域网)
  • Django入门教程——动态表格分页展示数据
  • 指令(一):Android OS实用指令
  • 【入驻电商平台指南】ISV入驻京东平台申请流程
  • Redis内部数据结构Dict结构详解
  • 关于写“查看IT设备详细信息”接口的理解
  • PostgresSql 常用运维命令
  • 【大数据学习 | Zookeeper】Zookeeper的选举机制
  • 《使用Gin框架构建分布式应用》阅读笔记:p212-p233
  • 解锁AI潜力:揭秘高效人工智能数据准备的奥秘
  • 使用Claude新功能分析数据文件
  • 如何对网络设备进行监控:以监控易平台为例
  • 1FreeRTOS学习(队列、二值信号量、计数型信号量之间的相同点和不同点)
  • 前端实现卡片,展开/收起效果(vue/React/html)