docker学习笔记(2)

docker容器间互连

可以使用link命令,例如下面这个例子

//先启动一个tomcat容器
docker run -it --name="tomcat01" tomcat /bin/bash

//用第二个容器连接第一个容器
docker run -it --name="tomcat02" --link tomcat01 tomcat

//查看是否连接成功
docker exec -it tomcat02 ping tomcat01

连接成功可以看到终端打印出的信息,原理就是在tomcat02的容器的/etc/hosts文件下加上了tomcat01的名称和ip解析,但是tomcat01的hosts文件下没有tomcat02的名称和解析,所有tomcat01无法ping通tomcat02

自定义网络

docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet

如果不加--subnet和--gateway的话docker会自动分配一个网段和网关

docker network connect mynet tomcat01

这样可以把tomcat01放在mynet网络下,同理可以把tomcat02也放在mynet下面,这样两个容器也可以相互ping通

docker有四种网络模式

host模式:容器和宿主机共享Network namespace。

container模式:容器和另外一个容器共享Network namespace

none模式:容器有独立的Network namespace,但并没有对其进行任何网络设置,如分配veth pair 和网桥连接,配置IP等。

bridge:桥接模式,默认是该模式

你可能感兴趣的:(linux)