问题
最近使用tensorboard
观察模型的训练结果时,发现可以正常访问服务器中的 tensorboard
端口 ,但是无法访问服务器容器 docker
中的tensorboard
端口!端口映射检查发现没有错误!
根据博客 通过端口映射在本地访问服务器(docker容器)上的tensorboard可视化结果 配置端口仍然无法访问!
tensorboard 版本:
➜ [dreamhomes@smj-docker] ~/GNNs/GVAE pip show tensorboard
Name: tensorboard
Version: 2.2.2
Summary: TensorBoard lets you watch Tensors Flow
Home-page: https://github.com/tensorflow/tensorboard
Author: Google Inc.
Author-email: packages@tensorflow.org
License: Apache 2.0
Location: /home/dreamhomes/.local/lib/python3.7/site-packages
Requires: wheel, grpcio, protobuf, requests, absl-py, tensorboard-plugin-wit, werkzeug, markdown, google-auth, setuptools, numpy, six, google-auth-oauthlib
Required-by: tensorflow
解决方法
使用docker 时将容器的6006端口暴露,例如:-p 16006:6006
,实现将服务器的16006
端口映射到容器的6006
端口。
执行 tensorboard --logdir runs
后访问服务器端口出现无法访问的问题,如下所示:
可以在运行命令时通过增加--bind_all
来解决!无须将本地端口映射到服务器端口!执行命令如下:
tensorboard --logdir runs --bind_all
在本地浏览器中通过服务器IP和端口号访问时,可以正常访问!!!