四种网络类型:
None:不为容器配置任何网络功能,–
net=
none
Container:与另一个运行中的容器共享Network Namespace,–
net=container:containerID(K8S)
Host:与宿主机共享Network Namespace,–net=host
Bridge:
Docker设计的NAT网络模型
下面分别讲解下:
none:
1
2
3
4
5
6
[root@
docker1 centos_zabbix]# docker run -it –network none centos6.9_ssh:v2 /bin/bash
[root@6ae597015723 /]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
这种没有ip,可以在容器里随便玩,没有多大意义
container类型的网络:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@1c21de6080bb html]# [root@docker1 centos_zabbix]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1c21de6080bb centos6.9_nginx_ssh:v3 “/bin/bash” 26 seconds ago Up 25 seconds vigorous_payne
[root@docker1 centos_zabbix]# docker run -it –network container:1c21de6080bb centos6.9_nginx_ssh:v4 /bin/bash
共用了主机名的ip地址
可以查看属性
[root@docker1 centos_zabbix]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
41c457f6b89d centos6.9_nginx_ssh:v4 “/bin/bash” 5 minutes ago Up 5 minutes loving_curie
1c21de6080bb centos6.9_nginx_ssh:v3 “/bin/bash” 6 minutes ago Up 6 minutes vigorous_payne
[root@docker1 centos_zabbix]# docker inspect 41c457f6b89d|grep -i network
“NetworkMode”: “container:1c21de6080bb8c83e800fa8b5fb15782a18bb61ab292050ca1172fbb866b1afc”,
“NetworkSettings”: {
“Networks”: {}
要注意的是这种公用container类型的端口是谁先用某个端口,谁就占了,后来的没法使用这个端口
host类型
[root@docker1 centos_zabbix]# docker run -it –network=host centos6.9_nginx_ssh:v2 /bin/bash
这种就是和宿主机共用端口,谁先占谁用,但是性能最高,所以我们在构建镜像的时候使用了这个参数,就是为了统一网络类型,提高构建镜像的效率
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/nsh123/p/11138694.html
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。