无法从 docker 运行 tensorflow 服务

Can not run tensorflow serving from docker

我正在尝试使用 docker 为我的模型 tensorflow/serving 提供服务。接下来是示例 https://www.tensorflow.org/tfx/serving/docker 我用我的简单模型做了几乎相同的事情。

在 WindowsPowerShell 中:

set-variable -name "PATH" -variable "D:\Other\tf-serving-example\savedmodel"

保存的模型:

|-- 1
    |-- assets
    |-- saved_model.pb
    `-- variables
        |-- variables.data-00000-of-00001
        `-- variables.index

下一个命令:

docker run -p 8501:8501 --mount type=bind,source=$PATH,target=/models/simple_cnn_model -e MODEL_NAME=simple_cnn_model -t tensorflow/serving

但它不起作用:

2021-01-19 15:32:30.681935: I tensorflow_serving/model_servers/server.cc:88] Building single TensorFlow model file config:  model_name: simple_cnn_model model_base_path: /models/simple_cnn_model
2021-01-19 15:32:30.682158: I tensorflow_serving/model_servers/server_core.cc:464] Adding/updating models.
2021-01-19 15:32:30.682192: I tensorflow_serving/model_servers/server_core.cc:587]  (Re-)adding model: simple_cnn_model
2021-01-19 15:32:30.783407: I tensorflow_serving/core/basic_manager.cc:740] Successfully reserved resources to load servable {name: simple_cnn_model version: 1}
2021-01-19 15:32:30.783506: I tensorflow_serving/core/loader_harness.cc:66] Approving load for servable version {name: simple_cnn_model version: 1}
2021-01-19 15:32:30.783531: I tensorflow_serving/core/loader_harness.cc:74] Loading servable version {name: simple_cnn_model version: 1}
2021-01-19 15:32:30.783643: E tensorflow_serving/util/retrier.cc:37] Loading servable: {name: simple_cnn_model version: 1} failed: Not found: Specified file path does not appear to contain a SavedModel bundle (should have a file called `saved_model.pb`) Specified file path: /models/simple_cnn_model/1

有趣的是一切都在使用示例中的模型。但我的模型几乎相同并正确保存。 那怎么了?似乎 --mount 命令不会从 savedmodel/1 复制内容,但据我所知,它应该将内容复制到容器中。

这个命令很好用

docker run -t --rm -d -p 8501:8501 -v "D:\Other\tf-serving-example\savedmodel:/models/simple_cnn_model" -e MODEL_NAME=simple_cnn_model tensorflow/serving