Docker 容器间通过主机名互相访问
Docker 容器间通过主机名互相访问
由于容器的IP地址在容器重启之后会失效,所以不能写死IP,这时候就可以通过使用主机名进行互相访问。
1. 使用--link
参数
docker run —link可以用来链接2个容器,使得源容器(被链接的容器)和接收容器(主动去链接的容器)之间可以互相通信,并且接收容器可以获取源容器的一些数据,如源容器的环境变量。
2. 使用自定义网段
默认网络和自定义网络区别
User-defined bridges provide automatic DNS resolution between containers. Containers on the default bridge network can only access each other by IP addresses, unless you use the —link option, which is considered legacy. On a user-defined bridge network, containers can resolve each other by name or alias.
翻译过来大意:就是用户自定义的网卡可以在容器之间提供自动的 DNS 解析,缺省的桥接网络上的容器只能通过 IP 地址互相访问,除非使用 —link 参数。在用户自定义的网卡上,容器直接可以通过名称或者别名相互解析。