Windows 10 DockernetworkingDNS在重新启动后不起作用

我不确定这是否是当前版本的Windows Dockernetworking的问题,或者是我的configuration错误和误解,但是我有以下设置:

  • 2个Docker容器(使用Microsoft / ASP.NET图像作为基础构build)在每个容器中运行一个.NET MVC应用程序。
  • 1运行SQL Server的Docker容器(使用Microsoft / mssql-server-windows映像构build)

当我创build所有3个容器时,一切都很好,我可以使用他们的名字连接并ping所有其他容器,没有任何问题。 应用程序运行,并可以互相沟通,如我所愿。

但是,当我重新启动我的机器,并再次启动所有的容器,他们不能再使用他们的名字(使用IP地址是好的)相互ping /通信。

我已经在默认的NATnetworking上试过这个,并尝试用自己的自定义NATnetworkingreplaceNATnetworking。

要解决这个问题,我必须为每个容器运行force network disconnect命令,如下所示:

docker network disconnect nat <containername> --force 

然后在启动之前,我必须重新连接每个容器到networking。 然后,所有的容器可以使用它们的名称以及IP地址相互ping通/通信。

仅供参考,这是一个开发环境,但我希望在Azure中使用Windows Server 2016 VM来做类似的事情,尽pipe我不太清楚现场制作的最佳networkingconfiguration,但是我需要有多个应用程序单独的容器)在通过他们自己的子域访问的同一个节点上。

任何帮助或指导将是伟大的。