質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.61%

  • Python

    7469questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Ubuntu

    1315questions

    Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

  • Docker

    659questions

    Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

  • TensorFlow

    634questions

[Docker]Docker上のTensorflow Servingにつながらない

受付中

回答 0

投稿

  • 評価
  • クリップ 0
  • VIEW 184

makiikeda1216

score 133

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%
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.61%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Python

    7469questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Ubuntu

    1315questions

    Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

  • Docker

    659questions

    Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

  • TensorFlow

    634questions