无法在 Windows 的 Docker 内启动 TensorFlow

Unable to start TensorFlow within Docker, on Windows

希望我没有遗漏任何东西。
我已经使用本指南在我的 win 7 上安装了 docker:
https://docs.docker.com/engine/installation/
我打开一个新终端并输入以下命令:

docker run -it b.gcr.io/tensorflow/tensorflow

全部下载并提取,然后我得到以下信息:

[I 16:09:55.069 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret 
[W 16:09:55.122 NotebookApp] WARNING: The notebook server is listening on all IP
 addresses and not using encryption. This is not recommended. 
[W 16:09:55.122 NotebookApp] WARNING: The notebook server is listening on all IP
 addresses and not using authentication. This is highly insecure and not recommended.
[I 16:09:55.134 NotebookApp] Serving notebooks from local directory: /notebooks 
[I 16:09:55.134 NotebookApp] 0 active kernels
[I 16:09:55.134 NotebookApp] The Jupyter Notebook is running at: http://[all ip addresses on your system]:8888/ 
[I 16:09:55.134 NotebookApp] Use Control-C to stop this server and shut down all
 kernels (twice to skip confirmation). 

然后它就这样卡住了,没有命令行,我无法输入任何东西...我错过了什么?

好的,所以我找到了某种答案,
有两种解决方法:
1)用源代码安装tensorflow,这似乎解决了问题。 这是通过编写完成的: docker run -it b.gcr.io/tensorflow/tensorflow:latest-devel
2) 或者,如果您使用常规安装,请在安装前检查 默认 VM IP 为:

docker-machine ip default

然后,安装后进入浏览器http://(default_ip):8888/

我遇到了同样的问题,并且能够按照以下步骤使其正常工作:

$ docker-machine ip default

在我的例子中记住这个 DOCKER_IP 值(复制到剪贴板)

192.168.99.100

现在启动您的 TensorFlow docker 容器(带端口转发):

$ docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow

现在打开网络浏览器:

$ open http://localhost:8888

您现在应该会在浏览器中看到 jupyter 主页

我正在写更多关于 Getting started wtih TensorFlow here 的笔记,其中一些是 OSX 具体的

更新:我现在有了更好的理解,所以我正在更新答案 - docker 图像使某些端口可用于映射(可导出),但默认情况下不会将它们映射到主机端口当容器为 运行 时。

我们可以使用-p 选项将它们映射到主机。我们指定主机上已导出的端口应映射到哪个主机端口(如果有)。

$ docker run -p $HOSTPORT:$CONTAINERPORT someimage