运行 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
将有助于回答问题。
我是 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
将有助于回答问题。