Windows Docker透明网络和端口映射
我正在尝试在docker windows容器中运行WCF应用程序 我为docker windows容器使用了不同类型的网络。似乎有两个主要的选择NAT和透明 NAT是默认的,并且很容易支持映射端口的Windows Docker透明网络和端口映射,windows,docker,docker-for-windows,Windows,Docker,Docker For Windows,我正在尝试在docker windows容器中运行WCF应用程序 我为docker windows容器使用了不同类型的网络。似乎有两个主要的选择NAT和透明 NAT是默认的,并且很容易支持映射端口的-p8080:80类型语法。但是,NAT阻止我访问计算机之外的任何东西。(意味着我无法连接到其他网络资源。) 透明非常适合访问我的网络资源。但是,当我尝试使用-p8080:80运行它时,会出现以下错误: failed to create endpoint distracted_gates on net
-p8080:80
类型语法。但是,NAT阻止我访问计算机之外的任何东西。(意味着我无法连接到其他网络资源。)
透明非常适合访问我的网络资源。但是,当我尝试使用-p8080:80
运行它时,会出现以下错误:
failed to create endpoint distracted_gates on network basic: hnsCall failed in Win32:
Port mapping is not supported on the given network. (0x803b0016).
在透明网络上似乎“不支持端口映射”
因此,这引出了我的问题:
如何指定端口以使用透明网络连接到我的windows服务?(或者有更好的方法我还不了解。)
注意:如果相关,下面是我的docker run命令(给出上述错误消息):
在网桥(linux)或透明(windows)网络中不需要映射端口。此场景中的要求是在Dockerfile中使用
EXPOSE
关键字
在大多数场景(使用NAT的场景)中,EXPOSE
关键字在您仍然需要映射您的-p hostPort:containerPort
时,对于文档编制更有用
请参见下面Dockerfile中的EXPOSE
关键字示例:
#document ports that are mandatory
EXPOSE 8080 8090 9000
在网桥(linux)或透明(windows)网络中不需要映射端口。此场景中的要求是在Dockerfile中使用
EXPOSE
关键字
在大多数场景(使用NAT的场景)中,EXPOSE
关键字在您仍然需要映射您的-p hostPort:containerPort
时,对于文档编制更有用
请参见下面Dockerfile中的EXPOSE
关键字示例:
#document ports that are mandatory
EXPOSE 8080 8090 9000