Как запустить tenorflow-serve, включая его модели, докером?

Проблема в том, что я хочу запустить tenorflow-serve, включая его модели, с помощью докера, но кажется, что докер не позволит тензорному сервису загрузить папку.
В самом контейнере он может легко загружать модели:

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

Но с докером он не может загружать модели:

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

person DonHunt7382    schedule 17.05.2020    source источник


Ответы (1)


Измените команду 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)

person Jinto Lonappan    schedule 20.05.2020