运行 Linux 容器作为主机时无法转发端口 Windows10

Cannot forward ports when running Linux container on Windows10 as a host

我是 Docker 的新手。我一直在尝试使用 Docker 部署一个 Linux 容器(以 Windows 作为主机),其中包含 Google 云映像。我能把所有事情都做好,最后服务器 运行ning 完美,但是当我想检查服务器时,使用浏览器中的本地主机,我得到一个空白页面:

Blank page

这是Docker文件:

FROM google/cloud-sdk
ENV PATH /usr/lib/google-cloud-sdk/bin:$PATH
WORKDIR docker_folder
COPY local_folder/ .
RUN pwd
EXPOSE 8080
CMD ["java_dev_appserver.sh", "."]

这是我用来构建图像的命令(在 CMD 中):

docker build --tag serverdeploy .

这是我用于运行我的容器

的命令
docker run -p 8080:8080 serverdeploy

这是我在 运行 服务器

时得到的堆栈跟踪

where I know that I running the server

我做了一些研究,看起来 Docker 在 Windows 中使用 Linux 容器时端口有问题(不确定是否已经解决)。我已经尝试了我在那里找到的所有可能的解决方案(甚至试图用我 运行 ipconfig on the cmd) 但我仍然得到同样的错误。

而且,作为最后的希望,我需要你的帮助来理解我做错了什么,或者我是否遗漏了什么

您 运行 您的服务绑定到 localhost - 这意味着 没有远程连接 被接受(以及绑定到 127.0.0.1 . 并且对于你的容器主机是一个远程连接。

将绑定更改为 0.0.0.0(我想这是默认设置)并享受。

顺便说一句,分享您的 java_dev_appserver.sh 将有助于回答问题。