docker 1.5之网络模型以及设置网络别名
1.四种网络模式
(1)bridge桥接模式,--net=bridge 是默认模式
(2)host模式,--net=host host模式无法通过-p指定端口,因为容器里使用的端口是宿主机端口,各个host模式的容器之前不能端口冲突
(3)none模式,--net=none 无网络模式
[root@elk ~]# docker run --name=test3 --net=none -it --privileged=true centos:7
(4)container 模式 --net=container:容器名
2.docker 自定义网络
root@elk ~]# docker network create --driver bridge --subnet 192.168.0.1/24 --gateway 192.168.213.1 mynet
# --driver指定网络模式
# --subnet指定网段
# --gateway指定网关
# mynet自己自定义的网络名
(1)查看网络的详细信息,格式:docker network inspect 网络名
[root@elk ~]# docker network inspect bridge [ { "Name": "bridge", "Id": "11089204b285c200f5839f5671d1fb6b7703473ed594b9b40c6a13d560b2225d", "Created": "2022-05-29T14:17:43.030488845+08:00", "Scope": "local", "Driver": "bridge", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [
(2)容器加入网络
格式:docker network connect 网络名 容器名
(3)安装网桥管理工具
[root@elk ~]# yum install -y bridge-utils
用brctl show查看docker容器状态
3.link设置网络别名
用处:给容器指定一个域名,避免了容器重启后ip变化带来的问题
实验准备,创建test1 test2 容器
[root@elk ~]# docker run --name=test1 -it centos:7 /bin/bash [root@elk ~]# docker run --name=test2 -it --link=test1:zhao centos:7 /bin/bash
查看下各自ip
hostname -I
用ping工具ping刚设置的别名zhao
root@66f3a95ea824 /]# ping zhao PING zhao (172.17.0.2) 56(84) bytes of data. 64 bytes from zhao (172.17.0.2): icmp_seq=1 ttl=64 time=0.092 ms 64 bytes from zhao (172.17.0.2): icmp_seq=2 ttl=64 time=0.134 ms
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了