Docker for Windowsを使って
Docker上にTensorflow servingをサービスとして実装したのですが
Clientからこのサービスを利用しようとするとSocket errと表示されます。
ネットワーク設定だと思うのですが、Dockerを触りはじめたばかりでよく分かっていません。
必要な情報が不足していましたら随時提供させていただきます。
下記に詳細を記載させていただいたので解決策をご存知の方がいらっしゃいましたらご教授ください。
OS:Windows10
Docker Image:Ubuntu(18.04)
Tensorflow_model_serverはapt-getで入手
python,pip = 2.7(hostのwindows10は3.6)
modelはmnist
コンテナ: tensorflow-serving 起動結果
root@22458f08129c:~# tensorflow_model_server --model_name=mnist --model_base_path=/usr/local/src/models/mnist --port=9000 2018-05-30 06:55:37.995074: I tensorflow_serving/model_servers/main.cc:154] Building single TensorFlow model file config: model_name: mnist model_base_path: /usr/local/src/models/mnist 2018-05-30 06:55:37.995184: I tensorflow_serving/model_servers/server_core.cc:444] Adding/updating models. 2018-05-30 06:55:37.995194: I tensorflow_serving/model_servers/server_core.cc:499] (Re-)adding model: mnist 2018-05-30 06:55:38.095819: I tensorflow_serving/core/basic_manager.cc:716] Successfully reserved resources to load servable {name: mnist version: 1} 2018-05-30 06:55:38.095910: I tensorflow_serving/core/loader_harness.cc:66] Approving load for servable version {name: mnist version: 1} 2018-05-30 06:55:38.095933: I tensorflow_serving/core/loader_harness.cc:74] Loading servable version {name: mnist version: 1} 2018-05-30 06:55:38.095958: I external/org_tensorflow/tensorflow/contrib/session_bundle/bundle_shim.cc:360] Attempting to load native SavedModelBundle in bundle-shim from: /usr/local/src/models/mnist/1 2018-05-30 06:55:38.096002: I external/org_tensorflow/tensorflow/cc/saved_model/loader.cc:242] Loading SavedModel with tags: { serve }; from: /usr/local/src/models/mnist/1 2018-05-30 06:55:38.097983: I external/org_tensorflow/tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA 2018-05-30 06:55:38.115580: I external/org_tensorflow/tensorflow/cc/saved_model/loader.cc:161] Restoring SavedModel bundle. 2018-05-30 06:55:38.125423: I external/org_tensorflow/tensorflow/cc/saved_model/loader.cc:196] Running LegacyInitOp on SavedModel bundle. 2018-05-30 06:55:38.130063: I external/org_tensorflow/tensorflow/cc/saved_model/loader.cc:291] SavedModel load for tags { serve }; Status: success. Took 34062 microseconds. 2018-05-30 06:55:38.130302: I tensorflow_serving/core/loader_harness.cc:86] Successfully loaded servable version {name: mnist version: 1} 2018-05-30 06:55:38.131539: I tensorflow_serving/model_servers/main.cc:316] Running ModelServer at 0.0.0.0:9000 ...
コンテナ内でmnist_client.pyを利用した結果
root@8cd4f3418be1:/usr/bin# python /usr/local/src/serving/tensorflow_serving/example/mnist_client.py --num-tests=10 --server=localhost:9000 Traceback (most recent call last): File "/usr/local/src/serving/tensorflow_serving/example/mnist_client.py", line 171, in <module> tf.app.run() File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 126, in run _sys.exit(main(argv)) File "/usr/local/src/serving/tensorflow_serving/example/mnist_client.py", line 166, in main FLAGS.concurrency, FLAGS.num_tests) File "/usr/local/src/serving/tensorflow_serving/example/mnist_client.py", line 139, in do_inference test_data_set = mnist_input_data.read_data_sets(work_dir).test File "/usr/local/src/serving/tensorflow_serving/example/mnist_input_data.py", line 185, in read_data_sets local_file = maybe_download(TRAIN_IMAGES, train_dir) File "/usr/local/src/serving/tensorflow_serving/example/mnist_input_data.py", line 43, in maybe_download filepath, _ = urllib.request.urlretrieve(SOURCE_URL + filename, filepath) File "/usr/lib/python2.7/urllib.py", line 98, in urlretrieve return opener.retrieve(url, filename, reporthook, data) File "/usr/lib/python2.7/urllib.py", line 245, in retrieve fp = self.open(url, data) File "/usr/lib/python2.7/urllib.py", line 213, in open return getattr(self, name)(url) File "/usr/lib/python2.7/urllib.py", line 443, in open_https h.endheaders(data) File "/usr/lib/python2.7/httplib.py", line 1038, in endheaders self._send_output(message_body) File "/usr/lib/python2.7/httplib.py", line 882, in _send_output self.send(msg) File "/usr/lib/python2.7/httplib.py", line 844, in send self.connect() File "/usr/lib/python2.7/httplib.py", line 1255, in connect HTTPConnection.connect(self) File "/usr/lib/python2.7/httplib.py", line 821, in connect self.timeout, self.source_address) File "/usr/lib/python2.7/socket.py", line 575, in create_connection raise err IOError: [Errno socket error] [Errno 99] Cannot assign requested address
Dockerを起動しているHost(windows10)からmnist_client.pyを実行した結果
C:\Users\username\Downloads\serving\tensorflow_serving\example>python mnist_client.py --num_tests=10 --server=172.17.0.3:9000 C:\Users\username\anaconda3\lib\site-packages\h5py\__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`. from ._conv import register_converters as _register_converters Extracting /tmp\train-images-idx3-ubyte.gz Extracting /tmp\train-labels-idx1-ubyte.gz Extracting /tmp\t10k-images-idx3-ubyte.gz Extracting /tmp\t10k-labels-idx1-ubyte.gz AbortionError(code=StatusCode.UNAVAILABLE, details="Connect Failed") AbortionError(code=StatusCode.UNAVAILABLE, details="Connect Failed") AbortionError(code=StatusCode.UNAVAILABLE, details="Connect Failed") AbortionError(code=StatusCode.UNAVAILABLE, details="Connect Failed") AbortionError(code=StatusCode.UNAVAILABLE, details="Connect Failed") ExpirationError(code=StatusCode.DEADLINE_EXCEEDED, details="Deadline Exceeded") AbortionError(code=StatusCode.UNAVAILABLE, details="Connect Failed") ExpirationError(code=StatusCode.DEADLINE_EXCEEDED, details="Deadline Exceeded") ExpirationError(code=StatusCode.DEADLINE_EXCEEDED, details="Deadline Exceeded") AbortionError(code=StatusCode.UNAVAILABLE, details="Connect Failed") Inference error rate: 100.0%
あなたの回答
tips
プレビュー