一:如果在linux第一次使用docker部署深度学习模型,则应先查看以下docker版本:
停止docker服务:
systemctl stop docker
查看当前版本:
rpm -qa | grep docker
如果不是最新版本,则卸载当前版本:
卸载软件包:
yum erase docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
删除镜像/容器等:
rm -rf /var/lib/docker
二:安装新版本:
软件包安装:
yum install -y yum-utils device-mapper-persistent-data lvm2
添加yum源:
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
查看可安装的版本:
yum list docker-ce --showduplicates | sort -r
安装最新版本:
yum install docker-ce -y
启动并开机自启:
systemctl start docker
systemctl enable docker
查看docker版本:
docker version
三:接下来以cpu为例,演示快速部署:
拉取镜像:
docker pull tensorflow/serving
下载demo models:
git clone https://github.com/tensorflow/serving
查找模型的路径,如我的路径为:
/home/yanfa/deep_fm_model/
输入以下命令即可
启动tensorflow服务容器并打开rest API端口:
docker run -t --rm -p 8501:8501 -v "/home/yanfa/deep_fm_model:/models/deep-model" -e MODEL_NAME=deep-model tensorflow/serving &
出现如上界面说明模型接口已开启成功
这是其他模型的测试数据格式,对于此次模型需要重新构造instances
使用预测API查询模型:
curl -d '{"instances": [1.0, 2.0, 5.0]}' \
-X POST http://localhost:8501/v1/models/half_plus_two:predict
其中8500默认为rpc端口,8501默认为REST端口,可以同时开启。环境变量MODEL_NAME指向模型目录(默认model),MODEL_BASH_PATH指向模型目录所在根目录(默认/models)