无法在 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
希望我没有遗漏任何东西。
我已经使用本指南在我的 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