tensorflow_model_server如何在0.0.0.0(默认本地主机)上绑定其HTTP/REST



我发现docker镜像TensorFlow/serving实际上使用可执行文件tensorflow_model_server来启动服务器。所以我把它装进一个码头集装箱手动启动服务器。

我的命令:

tensorflow_model_server --model_base_path=/root/serving/my_image_classifier/ --rest_api_port=8501 --model_name=ImageClassifier

此命令启动服务器,日志如下:

2018-11-27 03:56:43.302391: I tensorflow_serving/core/loader_harness.cc:86] Successfully loaded servable version {name: ImageClassifier version: 2}
2018-11-27 03:56:43.304439: I tensorflow_serving/model_servers/server.cc:286] Running gRPC ModelServer at 0.0.0.0:8500 ...
[warn] getaddrinfo: address family for nodename not supported
2018-11-27 03:56:43.306009: I tensorflow_serving/model_servers/server.cc:302] Exporting HTTP/REST API at:localhost:8501 

正如它所说,它的HTTP/RESTneneneba API导出为localhost。这是不对的,因为如果服务器在docker中绑定到localhost,则无法从外部附加。

我认真地阅读了帮助,但没有发现任何有用的东西。

那么,我如何让它绑定在0.0.0.0上呢

TensorFlow ModelServer版本:

TensorFlow ModelServer: 1.12.0-rc0+dev.sha.87470f0
TensorFlow Library: 1.12.0

事实上,即使日志显示HTTP/RESTneneneba API绑定在"localhost"上,它实际上也可以连接到docker容器外部。

为什么我不能附加它是另一个奇怪的问题(在机器重新启动后,whitch自动消失(。

然而,我仍然认为tensorflow_model_server在日志中使用"localhost"是不对的,尤其是当它告诉RPC绑定"0.0.0.0"时

我应该打开一个问题。

最新更新