如何查看容器的IP地址和网络相关的参数

如何查看容器的IP地址和网络相关的参数?

 

查看容器的IP地址,可以在主机上运行


sudo Docker ps查看正在运行的容器的id等信息
”sudo docker inspect 容器id“可以查看到容器的相关信息
“docker inspect --format '{{ .NetworkSettings.IPAddress }}' 容器id”可以查看容器的具体IP地址,如果输出是空的说明没有配置IP地址

ifconfig查看主机上的网络
cat /etc/hosts查看主机内部IP映射表
cat /etc/resolv.conf查看主机dns服务器配置
cat /etc/nsswitch.conf查看主机名字服务配置,这个配置文件用来在/etc/hosts文件中查找主机名和IP地址,如果在hosts文件中没有找到给定的主机的话,就会和DNS服务器通讯。
其他可能的名字服务会联系LDAP,NIS和NIS+等。
ip addr show查看主机IP地址
ip route show查看主机转发信息
netstat -nr查看主机当前IP转发表详细信息


在容器内可以查看网络相关的信息

 

ifconfig查看容器内的网络
cat /etc/hosts查看容器内内部IP映射表
cat /etc/resolv.conf查看容器内dns服务器配置
cat /etc/nsswitch.conf查看容器名字服务配置
ip addr show查看容器IP地址
ip route show查看容器转发信息
netstat -nr查看容器当前IP转发表详细信息

 

查看iptables:


sudo iptables -L -v
如果没有装iptables:
sudo apt-get install iptables

 

另外还有一些其他辅助命令:


参考
http://www.tecmint.com/linux-network-configuration-and-troubleshooting-commands/
host www.baidu.com
host -t any baidu.com
ping baidu.com
/usr/sbin/traceroute 
www.baidu.com
whois baidu.com
dig 
www.tecmint.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>>www.tecmint.com
nslookup www.tecmint.com
arp -e
ethtool eth0
iwconfig [interface]
cat /etc/sysconfig/network

### Docker 容器IP 地址配置及网络互通设置 #### 创建自定义桥接网络 为了更好地控制容器间的通信,建议创建一个自定义的桥接网络而不是使用默认的`docker0`。通过这种方式能够更方便地管理容器连接到同一网络上。 ```bash docker network create --subnet=192.168.5.0/24 my_bridge_network ``` 此命令会创建一个新的名为 `my_bridge_network` 的桥接网络,并指定了子网范围为 `192.168.5.0/24`[^1]。 #### 启动带有静态IP地址容器 当启动新的容器时,可以通过参数来指定该容器应该加入哪个特定的用户定义桥梁网络以及为其分配固定的内部IPv4地址: ```bash docker run -d \ --name some_container_name \ --network=my_bridge_network \ --ip=192.168.5.10 \ nginx ``` 上述指令表示将以守护进程模式运行Nginx服务端口映射至宿主机,并将其命名为 `some_container_name`, 加入之前建立好的 `my_bridge_network` 并赋予其固定内网IP `192.168.5.10`。 对于其他需要互联的服务也可以采用相同的方式部署,在同一个自定义网络内的所有容器都能够互相访问对方的服务而无需额外配置防火墙规则或端口转发等复杂操作[^3]。 #### 验证容器间的连通性 一旦多个容器被成功部署到了相同的自定义网络中,则可以直接利用它们各自的名称作为DNS解析目标来进行相互之间的HTTP请求或其他形式的数据交换测试: 假设已经按照上面的方法分别启动了一个Web服务器(nginx) 数据库(mysql),那么可以在任意一方执行如下curl命令验证两者能否正常通讯: ```bash # Inside the web server container (or any other connected containers) curl http://mysql:3306/ ``` 这里的`mysql`即代表了MySQL服务所在容器的名字,因为Docker Compose或者其他工具通常允许我们这样简单地引用同属一网络环境里的资源对象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值