如何确定Docker容器端口号?

时间:2018-08-10 10:12:26

标签: c# asp.net docker

ASP.NET应用程序已部署到Docker容器。也就是说,可以通过以下方式访问它:

http://10.98.1.191:1673/webapp/start

我需要从后端确定端口号。我使用以下方法获取端口:

HttpRequest request = _httpRequestVariable;
var host1 = request.ServerVariables["SERVER_NAME"]; // 10.98.1.191
var port1 = request.ServerVariables["SERVER_PORT"]; // getting port 80
var host2 = request.Url.Host; // 10.98.1.191
var port2 = request.Url.Port; // getting port 80

以上我希望获得端口1673,但是在两种情况下,我都获得默认端口80。端口号错误的问题仅出现在Docker容器上。从呼叫URL中提取端口号的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

如果您在运行docker容器的计算机上,请运行

  

docker ps

在您的终端中。这将为您提供所有正在运行的Docker容器的列表。然后运行

  

码头工人检查[码头工人容器的名称]

这将为您提供该Docker容器的所有统计信息,包括端口号。

答案 1 :(得分:1)

尝试在运行docker的计算机中从命令行使用以下命令

docker container ls --all

它应该显示所有已使用端口的列表