zoukankan      html  css  js  c++  java
  • 如何进入docker网络命名空间

    如何进入docker容器和网络的netns命名空间

    docker使用namespace实现网络,计算等资源的隔离,当需要排查网络问题时,使用p netns命令却无法在主机上看到任何network namespace,这是因为默认docker把创建的网络命名空间链接文件隐藏起来了,导致ip netns命令无法读取,给分析网络原理和排查问题带来了麻烦。

    下面是恢复netns命名空间的办法。

    恢复容器的netns

    执行下面的命令来获取容器进程号

    docker inspect 容器|grep Pid

    获取容器的进程号

    执行如下命令,将进程网络命名空间恢复到主机目录,

    ln -s /proc/容器进程号/ns/net /var/run/netns/容器

    如果/var/run/netns目录不存在,以root用户手动创建目录即可。

    然后执行ip netns命令即可看到容器的网络命名空间。可执行网络相关命令来排查网络情况

  • 相关阅读:
    1211.分割平衡字符串
    1282.用户分组
    分模块配置
    Spring Bean相关配置
    Spring IOC是什么
    Spring简介
    小黄衫感想
    团队展示
    原型设计
    结对作业
  • 原文地址:https://www.cnblogs.com/cheyunhua/p/15673760.html
Copyright © 2011-2022 走看看