docker学习(二十、network使用示例host、none)

文章比较了Docker中host和none两种网络模式的使用示例,host模式提供直接网络连接和性能优势,但牺牲了端口隔离;none模式则封闭且安全,但容器无法联网。
摘要由CSDN通过智能技术生成


network相关内容:
docker学习(十八、network介绍)
docker学习(十九、network使用示例bridge)
docker学习(二十、network使用示例host、none)
docker学习(二十一、network使用示例container、自定义)

一、host

应用示例

# 使用host类型的network启动ubuntu镜像,配置了默认端口会出现警告,不配置端口即可
docker run -itd -p 8080:80 --network host --name ubuntu ubuntu:latest /bin/bash
docker rm -f ubuntu
# 使用host类型的network启动ubuntu镜像,配置了默认端口会出现警告
docker run -itd --network host --name ubuntu ubuntu:latest /bin/bash

在这里插入图片描述

# 进入容器内部
docker exec -it ubuntu /bin/bash
# 查看容器内部的网络配置,发现与宿主机一致
ifconfig

在这里插入图片描述

# 退出容器
exit
# 查看容器的network
docker inspect ubuntu | tail -n 20

可以看到ubuntu的network是host模式
在这里插入图片描述

总结

  • host没有bridge的配对(eth0 <–> veth)显示;
  • host网络可以在容器创建时通过 --network host来指定;
  • 使用host模式的容器可以直接使用docker host的IP地址与外界通信,容器内部的服务端口也可以使用宿主机的端口,不需要进行NAT(地址转换);
  • host最大的优势就是网络性能比较好,但是docker host上已经使用的端口就不能再用了,网络的隔离性不好。

二、none

应用示例

# 使用host类型的network启动ubuntu镜像,配置了默认端口会出现警告,不配置端口即可
docker run -itd -p 8081:80 --network none --name ubuntu1 ubuntu:latest /bin/bash
docker inspect ubuntu1 | tail -n 20

在这里插入图片描述

总结

  • 这种网络模式下容器只有lo回环网络,没有其他网卡;
  • none网络可以在容器创建时通过 --network none 来指定;
  • 这种类型的网络没有办法联网,封闭的网络能很好的保证容器的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈年小趴菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值