热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Win10下基于Docker使用tensorflowserving部署模型

windows就是更坑安装DockerforWindows前提:DockerforWindows需要带有Hyper-V的64位Windows10Pro,如果您的系统不符合运行Doc

windows就是更坑

安装Docker for Windows

  1. 前提:Docker for Windows需要带有Hyper-V的64位Windows 10 Pro,如果您的系统不符合运行Docker for Windows的要求,则可以安装 Docker Toolbox,它使用Oracle Virtual Box而不是Hyper-V。【注:我的是win10专业版1709,Docker现在可以使用Hyper-V技术在Windows上运行Linux容器(LCOW)。】
    点击查看详情页
  2. 打开Hyper-V服务:手动配置还是挺麻烦,可以通过Docker for Windows安装程序来启用Hyper-V,然后计算机会自动重启
  3. 等待docker小鲸鱼图标停止“喷水”——docker is starting或者docker is switching,成功后会是这样:
    Win10下基于Docker使用tensorflow serving部署模型
  4. 启动docker:建议使用powershell启动;
    • win+R,输入powershell
    • 运行一下命令验证安装:docker –version、docker-compose –version、docker-machine –version、docker version
      Win10下基于Docker使用tensorflow serving部署模型
      Win10下基于Docker使用tensorflow serving部署模型
    • 关闭自动更新与开机自启:小图标右键:settings
      Win10下基于Docker使用tensorflow serving部署模型
    • 查看更详细的初步教程
    • 或者这篇博客

tensorflow serving on docker

1.先克隆到本地:(我是用的git bash,也可以直接在powershell中执行命令)【一开始我是在powershell中clone的,但是发觉速度太慢,并且还失败了】

git clone –recurse https://github.com/tensorflow/serving.git(如果克隆库的时候要带上子模块,请加上 –recursive 参数)
再次进入powershell:cd serving
Win10下基于Docker使用tensorflow serving部署模型

我这下载完成后有1.1个G

2.使用docker创建容器(会下载很多依赖,bazel, grpc。这也是使用容器的原因,手动通过源代码构建太麻烦)【bazel是谷歌的构建工具blaze的开源版】

docker build –pull -t tensorflow-serving-devel -f tensorflow_serving/tools/docker/Dockerfile.devel .

// 3.运行上面创建的容器(会进入对应的终端):

docker run –name=tensorflow_container -it $USER/tensorflow-serving-devel【–name参数的值可以改,但是要记住了,之后在web端或者APP端会用到】

// 4.在容器中再次clone:

git clone –recurse https://github.com/tensorflow/serving.git
cd serving/tensorflow
./configure

// 5.选择你要安装的“组件”:

报错及解决:

invalid argument “/tensorflow-serving-devel” for t: invalid reference format:
我认为这是使用windows造成的,去掉 docker build –pull -t $USER/tensorflow-serving-devel -f tensorflow_serving/tools/docker/Dockerfile.devel .中的 user
no matching manifest for windows/amd64 in the manifest list entries:暂时没能解决

参考:

  1. you tu be
  2. 上方视频的文件资料
  3. https://weiminwang.blog/2017/09/12/introductory-guide-to-tensorflow-serving/
  4. https://towardsdatascience.com/how-to-deploy-machine-learning-models-with-tensorflow-part-2-containerize-it-db0ad7ca35a7
  5. https://www.tensorflow.org/serving/

推荐阅读
  • 本文探讨了将PEBuilder转换为DIBooter.sh的方法,重点介绍了如何将DI工具集成到启动层,实现离线镜像引导安装。通过使用DD命令替代传统的grub-install工具,实现了GRUB的离线安装。此外,还详细解析了bootice工具的工作原理及其在该过程中的应用,确保系统在无网络环境下也能顺利引导和安装。 ... [详细]
  • 本文详细介绍了使用响应文件在静默模式下安装和配置Oracle 11g的方法。硬件要求包括:内存至少1GB,具体可通过命令`grep -i memtotal /proc/meminfo`进行检查。此外,还提供了详细的步骤和注意事项,确保安装过程顺利进行。 ... [详细]
  • Ceph API微服务实现RBD块设备的高效创建与安全删除
    本文旨在实现Ceph块存储中RBD块设备的高效创建与安全删除功能。开发环境为CentOS 7,使用 IntelliJ IDEA 进行开发。首先介绍了 librbd 的基本概念及其在 Ceph 中的作用,随后详细描述了项目 Gradle 配置的优化过程,确保了开发环境的稳定性和兼容性。通过这一系列步骤,我们成功实现了 RBD 块设备的快速创建与安全删除,提升了系统的整体性能和可靠性。 ... [详细]
  • 欢迎来到Netgen新时代:探索网络生成技术的无限可能
    欢迎进入Netgen的新时代:探索网络生成技术的无限潜力。本文将详细介绍如何编译下载的Netgen源代码,生成Netgen程序,并提供开发所需的库nglib。此外,还将探讨Netgen在现代网络设计与仿真中的应用前景,以及其在提高网络性能和可靠性方面的关键作用。 ... [详细]
  • Windows环境下详细教程:如何搭建Git服务
    Windows环境下详细教程:如何搭建Git服务 ... [详细]
  • 本文介绍了在Windows 10系统下使用VirtualBox虚拟机环境部署CentOS 7.2,并在其上安装Docker的具体步骤。针对宝塔面板在Docker容器中磁盘空间限制为8GB的问题,提供了详细的解决方案和优化建议,确保用户能够高效利用有限的存储资源。 ... [详细]
  • 如何将PHP文件上传至服务器及正确配置服务器地址 ... [详细]
  • 本文介绍了使用 Python 编程语言高效抓取微博文本和动态网页图像数据的方法。通过详细的示例代码,展示了如何利用爬虫技术获取微博内容和动态图片,为数据采集和分析提供了实用的技术支持。对于对网络数据抓取感兴趣的读者,本文具有较高的参考价值。 ... [详细]
  • Python网络爬虫入门:利用urllib库进行数据抓取
    Python网络爬虫入门:利用urllib库进行数据抓取在数据科学和Web开发领域,Python凭借其简洁高效的特性成为首选语言。本文主要介绍了如何在Windows环境下使用Python的urllib库进行基本的网络数据抓取。考虑到命令行操作的不便,作者选择了Jupyter Notebook作为开发环境,不仅简化了配置过程,还提供了直观的数据处理和可视化功能。通过实例演示,读者可以轻松掌握urllib的基本用法,为深入学习网络爬虫技术打下坚实基础。 ... [详细]
  • 进程(Process)是指计算机中程序对特定数据集的一次运行活动,是系统资源分配与调度的核心单元,构成了操作系统架构的基础。在早期以进程为中心的计算机体系结构中,进程被视为程序的执行实例,其状态和控制信息通过任务描述符(task_struct)进行管理和维护。本文将深入探讨进程的概念及其关键数据结构task_struct,解析其在操作系统中的作用和实现机制。 ... [详细]
  • 如何在Ubuntu系统中直接使用Snap安装软件
    Canonical与Opera Software近日宣布,基于Chromium的Opera浏览器现已作为Snap包提供给Ubuntu用户,显著提升了在Linux操作系统上的安装便捷性和兼容性。通过Snap,用户可以在Ubuntu系统中轻松安装和更新Opera浏览器,享受更流畅的浏览体验。此外,Snap的容器化特性还确保了应用的安全性和稳定性,为用户提供更加可靠的软件环境。 ... [详细]
  • 点云技术初探(三):PCL基础知识与学习路径指南本文首先介绍了点云库(PCL)的基本概念,PCL是一个在前人点云研究成果基础上发展而来的大型跨平台开源C++编程库,旨在为点云数据处理提供全面的支持。文章详细阐述了PCL的核心功能及其在三维数据处理、特征提取、分割与配准等方面的应用,并为初学者提供了系统的学习路径和资源推荐,帮助读者快速掌握PCL的使用方法。 ... [详细]
  • 在Linux系统中,原本已安装了多个版本的Python 2,并且还安装了Anaconda,其中包含了Python 3。本文详细介绍了如何通过配置环境变量,使系统默认使用指定版本的Python,以便在不同版本之间轻松切换。此外,文章还提供了具体的实践步骤和注意事项,帮助用户高效地管理和使用不同版本的Python环境。 ... [详细]
  • 系统管理员可以通过多种方法实时监控Linux系统中的用户活动,包括当前已登录的用户及其正在进行的操作。利用特定的命令和工具,管理员可以轻松获取这些信息,确保系统的安全性和稳定性。例如,使用`who`、`w`或`last`等命令可以快速查看当前登录的用户及其活动详情。 ... [详细]
  • 在2020年8月19日的深度分析中,我们探讨了HTML标签中同时存在`a`标签的`href`和`onclick`属性时的触发顺序问题。此外,还讨论了如何在一个自适应高度的父级`div`中,使两个子`div`中的一个固定高度为300px,另一个自动填充剩余空间的方法。最后,文章详细介绍了JavaScript异步加载的多种实现方式,包括但不限于`async`、`defer`属性以及动态脚本插入技术,为开发者提供了丰富的技术参考。 ... [详细]
author-avatar
西羽易
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有