如何通过 docker 运行 包含其模型的 tensorflow-serving?

How to run tensorflow-serving including its models by docker?

问题是,我想 运行 tensorflow-serving 包括它的模型 docker,但似乎
docker 将使 tensorflow-serving 无法加载文件夹。
在容器本身,它可以轻松加载模型:

tensorflow_model_server --port=9000 --model_name=1 --model_base_path=/models/

但是docker,它无法加载模型:

docker run --name tfx-test -p 8501:8501 -v "/models:/models" -e MODEL_NAME=5 -t tensorflow/serving

结果:

E tensorflow_serving/sources/storage_path/file_system_storage_path_source.cc:362] FileSystemStoragePathSource encountered a filesystem access error: Could not find base path /models/5 for servable 5

模型文件:

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

docker run命令更改为:

docker run -p 8501:8501 --mount type=bind,\
source=/models/1,\
target=/models/my_model/1 \
-e MODEL_NAME=my_model -t tensorflow/serving

并且,您可以在以下位置查看您的模型元数据:http://localhost:8501/v1/models/my_model/metadata(假设您是 运行 您来自 localhost 的 docker)