查看docker当前建立的网络

使用命令查看docker当前建立的网络:

docker network ls

发现docker-compose up确实建立了网络xx_default

使用命令查看该网络详细信息:

docker inspect xx_default

可以看到compose 中的多个服务的IP都在同一个网段,执行命令进入每个服务容器:

docker exec -it service1 bash
docker exec -it service2 bash
...

相互之间能够通过服务名ping通,没有在hosts中指定IP跟域名,是如何找到彼此的呢?

查看官方文档得知,在Docker1.10之后,在用户自建的网络中内嵌了一个DNS服务

https://docs.docker.com/config/containers/container-networking/