我有一个非常简单的 asp.net core 应用程序(支持 Linux 的 Docker 支持的 C# Web 应用程序),当我构建 docker 映像并尝试在本地 PC 上运行它时,会发生以下情况;\n在 docker 中,我的映像名为 test,我输入 docker run test,此时它会显示“内容根路径:/app 现在正在监听:http://[::]:80 ”\n即使当我输入 docker ps 时,我也可以看到进程正在运行,当我尝试导航到 localhost:80 我得到的只是漫长的等待,然后“此站点可以\xe2\x80\x99t 到达,本地主机拒绝连接。”
\n\n我输入了
\n\ndocker inspect -f \'{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}\' ec158cc3b344
这给了我容器的IP地址,但即使直接导航到容器,如果我在端口80上导航,我也会得到“这个站点可以\xe2\x80\x99t被访问\n”,或者如果我尝试“你的连接被中断”直接访问IP。
\n\n我还尝试完全跳过 docker 并将映像部署到 Kubernetes,看看这是否会给我带来任何运气,但是当我尝试访问服务外部 IP(在本例中为 localhost)时,我得到以下信息\n"此页面\xe2\x80\x99t 无法工作,本地主机未\xe2\x80\x99t 发送任何数据。”
\n\n我也尝试使用
\n\nkubectl get pods -o wide
并直接访问 Pod 的 IP,但这只是给我“这个 10.1.0.32 页面可以\xe2\x80\x99t 被发现”,例如。
\n\n如果您想知道,这是我的 dockerfile 和 kubernetes 部署 .yml
\n\nFROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base\nWORKDIR /app\nEXPOSE 80\n\nFROM …Run Code Online (Sandbox Code Playgroud)