docker (三) 网络
docker (三) 网络
查看宿主机网络情况:
2:进入 容器查看容器内的网络情况
docker exec -it 容器id /bin/bash
首次进入容器很多的Linux基本命令都没有需要先安装
apt-get update
apt-get install -y iproute2
apt-get install net-tools
apt-get install inetutils-ping
查看容器内的IP地址信息: ip addr
原理分析:
我们每启动一个docker 容器,docker就会给docker容器分配一个IP我们只要安装了docker,就会有一个网卡 docker0 桥接模式,使用的技术是env-pair技术!
所有的容器不指定网络的情况下,都是用docker0 路由的,docker会给我们的容器默认分配一个可用的IP
自定义网络
1:查看所有的Docker网络
docker network ls
网络模式:
bridge 使用docker daemon指定的网桥
host //容器使用主机的网络
container:NAME_or_ID >//使用其他容器的网路,共享IP和PORT等网络资源
none 容器使用自己的网络(类似--net=bridge),但是不进行配置
docker 默认的启动方式 --net bridge
docker0特点:默认是bridge方式,域名不能访问。
docker创建网络:
查看创建网络命令: docker network --help
创建自己的docker网络
docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet
--driver bridge 网络模式桥接
--subnet 192.168.0.0/16 子网
--gateway 192.168.0.1 网关
启动容器时使用自己的网络
docker run -itd --name mysql003 -P --net mynet mysql /bin/bash
网络连通
docker容器连接到网络
docker network connect mynet 容器id或容器名字