所有课程
登录
软件开发
数据科学与商业分析AI与机器学习项目管理网络安全云计算DevOps业务与领导力质量管理软件开发敏捷与ScrumIT服务与架构数字营销大数据职业快速通道企业其他部分
现在的趋势
[
淘宝网上卖的是什么?
文章
](www.simplilearn.com/tutorials/r…
树莓派Docker
文章
](www.simplilearn.com/tutorials/d…
区块链职业指南。成为一名区块链开发者的综合手册
电子书
](www.simplilearn.com/blockchain-…
淘宝网上卖的是什么?
文章
](www.simplilearn.com/tutorials/m…
PHP中的数组
文章
](www.simplilearn.com/tutorials/p…
了解C#数组的一站式解决方案
视频教程
](www.simplilearn.com/tutorials/a…
2022年要学习的最佳编程语言
文章
](www.simplilearn.com/best-progra…
AngularJS Vs. Angular 2 Vs. Angular 4:了解它们的区别
文章
](www.simplilearn.com/angularjs-v…
淘宝网上卖的是什么?
文章
](www.simplilearn.com/tutorials/r…
掌握了这一点,你就可以在你的工作中发挥你的作用了。
文章
](www.simplilearn.com/tutorials/p…)
张流Docker完整指南
作者:Simplilearn最后更新于2022年1月29日
目录
查看更多
Docker创建了虚拟环境,使用容器将TensorFlow安装与系统的其他部分隔离。TensorFlow程序在一个虚拟环境中运行,与主机共享资源。
Docker允许我们毫不费力地复制用于从任何地方训练和运行机器学习模型的工作环境。它允许我们将我们的代码和依赖项打包成容器,可以转移到不同的主机上,而不考虑硬件或操作系统。基本上,它是免费的开源软件,使在同一服务器上执行几个网络应用程序变得简单、安全和一致。
研究生课程。全栈网络开发
与加州理工学院CTMEE合作立即报名
TensorFlow Docker要求
-
Docker应该被安装在你的本地主机上。
Docker是一个免费和开放的平台,用于构建、交付和操作应用程序。Docker允许我们将我们的应用程序与我们的基础设施解耦,使我们能够迅速地发布软件。我们可以用控制应用程序的方式来管理我们的基础设施,这与使用Docker的方式相同。我们还可以利用Docker快速运送、测试和部署代码的方法,大大缩短从编写代码到在生产中执行代码的时间。
-
安装英伟达Docker支持Linux上的GPU支持。
用户可以利用英伟达容器工具包来创建和执行GPU加速的Docker容器。该工具包中包含一个容器运行库和实用程序,以及用于自动配置容器以使用NVIDIA GPU的设施。
请确保我们的Linux发行版已经安装了NVIDIA驱动程序和Docker引擎,以便开始使用。在主机系统上不需要安装CUDA工具包,但必须安装NVIDIA驱动程序。
安装Docker
Docker Desktop使得在Mac和Windows上创建、分发和操作容器变得简单,就像在Linux上一样。Docker负责处理复杂的设置,使我们能够集中精力编写代码。Docker引擎以静态二进制安装的形式出现在一系列Linux平台上,也可以通过Docker Desktop在macOS和Windows 10上使用。
-
Mac上的Docker Desktop
系统要求。
Mac必须满足以下要求才能成功安装Docker Desktop。
- 配备英特尔芯片的Mac
- 带有苹果芯片的Mac
- 带有英特尔芯片的Mac
Docker Desktop与最新版本的macOS、当前的macOS版本以及之前的两个版本兼容。随着新的macOS主要版本的广泛使用,Docker不再支持旧版本,而是支持最新的版本(除了之前的两个版本)。Docker桌面目前支持macOS Catalina、macOS Big Sur和macOS Monterey。
-
至少有4GB的内存。
-
不得安装4.3.30版本之前的VirtualBox,因为它与Docker Desktop不兼容。
-
使用苹果硅的Mac
苹果硅上的Docker Desktop for Mac的GA版本现在可用。这使我们能够在首选的本地开发环境中开发应用,并扩展了基于ARM的应用开发。
适用于Apple silicon的Docker Desktop还支持多平台镜像,使我们能够为x86和ARM架构创建和执行镜像,而不需要复杂的交叉编译开发环境。
免费课程。Docker入门
掌握Docker的基础知识立即报名
在Mac上安装和运行Docker Desktop
1.双击Docker.dmg以打开安装程序,然后将Docker图标拖到应用程序文件夹中。
2.2. 双击应用程序文件夹中的Docker.app来启动Docker。
3.Docker菜单显示Docker订阅服务协议窗口(鲸鱼菜单)。它包含了对Docker Desktop的服务条款的更新;请仔细阅读。
4.4. 要继续,请勾选表示你接受修改后的条件,然后点击接受。在你接受条款后,Docker Desktop将启动。
*如果我们不同意这些条款,Docker Desktop将关闭,我们将无法在我们的电脑上使用它。通过稍后启动Docker Desktop,我们可以接受这些条款。
安装后,Docker Desktop会启动快速入门指南。该教程包括一个简单的练习,建立一个Docker镜像的例子,作为一个容器运行,推送并保存到Docker Hub。
-
Docker适用于Windows,Windows 10 Pro,或更高版本
系统要求。
Windows机器必须满足以下要求才能成功安装Docker Desktop。
-
WSL 2后端
-
Hyper-V后端和Windows容器
-
WSL 2后端
-
具有第二级地址转换功能的64位处理器
-
4GB系统内存
-
必须在BIOS设置中启用BIOS级硬件虚拟化支持。
-
Hyper-V后端和Windows容器
Docker Desktop创建的容器和镜像在安装它的机器上的所有用户账户之间共享,因为所有Windows账户都使用同一个虚拟机来构建和操作容器。
安装。
- 下载Docker。
- 双击InstallDocker.msi来运行安装程序。
- 按照安装向导的提示:接受许可,授权安装程序,并继续安装。
- 点击完成来启动Docker。
- Docker会自动启动。
- Docker会加载一个 "欢迎 "窗口,给你提示和访问Docker文档的机会。
全栈网络开发人员课程
成为MEAN Stack的专家查看课程
验证。
状态栏中的鲸鱼表示一个正在运行的(可通过终端访问)Docker实例。
打开PowerShell或你喜欢的Windows终端(如命令提示符),输入docker run hello-world。
每次Docker启动时,Windows都会提示我们进行访问,允许Docker管理Hyper-V虚拟机的。在Docker第一次启动时,我们可能需要提供Beta版邀请邮件中的令牌。从通知区选择 "关于Docker",并在初始化完成后验证我们是否有最新版本。
从PowerShell(或你喜欢的Windows终端),检查docker、docker-compose的版本,并验证你的安装。
PS C:\Users\username> docker --version PS C:\Users\username> docker-compose --version PS C:\Users\username> docker-machine --version |
在我们停止之前,让我们测试一下Docker化的Web服务器。
NGINX是一个著名的轻量级网络应用程序,用于创建服务器端应用程序。它是一个开源的Web服务器,可以在各种操作系统上运行。Docker已经保证支持nginx,因为它是一个流行的开发用网络服务器。
让nginx的 Docker容器启动和运行的各种程序是。
- 第一步是获取Docker Hub镜像。当我们登录Docker Hub时,我们可以搜索并查看nginx镜像,如下图所示。只需在搜索栏中输入nginx,然后点击结果中出现的nginx(官方)链接。
- nginx的Docker拉取命令可以在Docker Hub的仓库信息中找到。
- 为了从Docker Hub获得最新的nginx镜像,在Docker主机上运行如上所示的Docker pull命令。
- 现在,使用下面的命令来启动nginx容器。
sudo docker run -p 8080:80 -d nginx |
我们将把nginx服务器上的80端口暴露给Docker主机上的8080端口。
如果我们在运行该命令后进入URL http://dockerhost:8080,我们将看到以下输出。这表明nginx容器已经运行。
新课程。初级全栈开发
学习Git命令、Angular、NodeJS、Maven等课程立即报名
用Docker提供服务
Tensorflow Serving是谷歌的一个API,用于生产机器学习系统,谷歌和其他大型科技组织广泛使用。用同样的服务器架构和API来部署我们的模型很简单。虽然它最好是用TensorFlow模型,但它也可以被修改为与其他模型一起工作。
上面的图形描述了整个过程的高层视图,从建立模型到使用Tensorflow Serving将其服务于终端。为大多数类型的模型提供服务的理想解决方案可能是在服务器上操作一个集中的模型,任何设备,无论是台式机、移动设备还是嵌入式设备,都可以从这里提出请求。然后,服务器将为我们执行推理并返回结果。我们可以将该预测呈现给使用该预测的任何设备。如果众多客户访问你的终端,而这个终端又集中在服务器上,那么这种设计就有很大的优势。
让我们先下载最新的Tensorflow Serving镜像。
docker pull tensorflow/serving |
我们正在运行Serving镜像,并在REST API端点上发布我们的模型。
docker run -p 8501:8501 --mount type=bind,source=/path/to/the/unzipped/model/tmp/, target=/models/fashion_mnist -e MODEL_NAME=fashion_mnist -t tensorflow/serving |
使用 predict API 查询该模型。
curl -d '{"signature_name":"serving_default", "instances":[[[[0.0], [0.0]…………….[0.0]]]]}’-X POST http://localhost:8501/v1/models/fashion_mnist:predict |
使用你的GPU为Docker提供服务
Nvidia-docker是docker命令的一个封装器,它以透明的方式为容器提供在GPU上运行程序所需的组件。只有当我们使用nvidia-docker运行一个需要GPU的容器时才需要它。
在用GPU提供服务之前,我们需要两件事。
- 为你的系统提供最新的NVIDIA驱动
- nvidia-docker
让我们尝试通过一个例子来理解这一点。
通过运行以下命令,拉出最新的TensorFlow Serving GPU docker镜像。
docker pull tensorflow/serving:latest-gpu |
我们将利用半加二的玩具模型,它为我们提供的预测的x值生成0.5*x+2。Ops将被链接到GPU设备上,模型将不会在CPU上运行。
mkdir -p /tmp/tfserving cd /tmp/tfserving git clone https://github.com/tensorflow/serving |
运行TensorFlow Serving容器,将其指向该模型并打开REST API端口。
docker run --gpus all --p 8501:8501 \-mount type=bind,and --mount type=bind,\ source=/tmp/tfserving/serving/tensorflow_serving/servables/tensorflow/testdata/saved_model_half_plus_two_gpu,/etc. target=/models/half_plus_two\e -e MODEL_NAME=half_plus_two -t tensorflow/serving:latest-gpu & |
这将启动Docker容器,启动TensorFlow Serving模型服务器,绑定REST API端口8501,并将我们想要的模型从主机映射到容器的模型。
2018-07-27 00:07:20.773693: I tensorflow_serving/model_servers/main.cc:333] 。 在:localhost:8501导出HTTP/REST API ... |
通过全栈网络开发人员--MEAN Stack硕士课程,推进你作为MEAN Stack开发人员的职业生涯。现在就报名吧!
总结
Docker允许我们对一个应用程序进行分割,这样我们就可以刷新、清理和修复它,而不必完全关闭它。此外,Docker允许我们为应用程序创建一个架构,该架构由通过API进行通信的微小进程组成。
如果你有兴趣了解更多关于React JS和其他相关概念,你可以报名参加Simplilearn的独家全栈网络开发认证课程,并加快你作为软件开发人员的职业生涯。该课程包括各种软件开发课程,从基础知识到高级主题。
Simplilearn还提供多个领域的免费在线技能提升课程,从数据科学和商业分析到软件开发、AI和机器学习。你可以参加这些课程中的任何一个,以提升你的技能并推动你的职业生涯。
寻找我们在顶级城市的全栈网络开发在线训练营的研究生课程。
| 名称 | 日期 | 地点 |
|---|---|---|
| 全栈式网络开发的研究生课程 | 班级于2022年2月9日开始, | |
| 周末批次 | 您所在的城市 | 查看详情 |
| 全栈式网络开发研究生课程 | 课程于2022年2月23日开始, | |
| 周末批次 | 芝加哥 | 查看详情 |
| 全栈式网络开发研究生课程 | 班级于2022年3月8日开始, | |
| 周末批次 | 休斯顿 | 查看详情 |
关于作者
Simplilearn是世界领先的数字营销、云计算、项目管理、数据科学、IT、软件开发和其他许多新兴技术的在线培训供应商之一。
查看更多
推荐课程
[
全栈网络开发的研究生课程
761名学员
终身访问*。
](www.simplilearn.com/pgp-full-st…
全栈网络开发人员 - MEAN Stack
822名学员
终身访问*
](www.simplilearn.com/full-stack-…)
*终身访问高质量、自定进度的电子学习内容。
在这些城市寻找全栈式网络开发的研究生课程
全栈式网站开发研究生课程,波士顿全栈式网站开发研究生课程,芝加哥全栈式网站开发研究生课程,圣何塞全栈式网站开发研究生课程,西雅图全栈式网站开发研究生课程,坦帕全栈式网站开发研究生课程,华盛顿
[
下一篇
通往全栈式网络开发职业的道路
通过Simplilearn
42210月28日, 2021
](www.simplilearn.com/full-stack-…)
推荐资源
-
[
云计算中的Web应用开发入门电子书
-
[
什么是全栈式Web开发人员?
-
[
在数据结构中实现堆栈
-
[
掌握AWS职业指南。成为一名AWS解决方案架构师的综合游戏手册Ebook
-
[
谁是全栈开发者?
-
[
了解堆栈和队列的区别的终极指南
上一页下一页
© 2009 -2022- Simplilearn Solutions
关注我们!
公司介绍
与我们一起工作
发现问题
技能提升资源RSS订阅Simplilearn优惠券和折扣优惠城市地图
为企业服务
在旅途中学习!
流行的研究生课程
项目管理认证课程|网络安全认证课程|数据科学训练营课程|数据分析训练营课程|商业分析认证课程|数字营销认证课程|精益六西格玛认证课程|DevOps认证课程|云计算认证课程|数据工程课程|AI和机器学习课程|全栈网络开发课程
流行的硕士课程
PMP Plus认证培训课程|大数据工程师课程|数据科学认证课程|数据分析师认证课程|人工智能课程|云架构师认证培训课程|DevOps工程师认证培训课程|高级数字营销课程|网络安全专家课程|MEAN栈开发课程
潮流课程
PMP认证培训课程|大数据Hadoop认证培训课程|Python数据科学认证课程|机器学习认证课程|AWS解决方案架构师认证培训课程|CISSP认证培训|认证ScrumMaster(CSM)认证培训|ITIL 4基础认证培训课程|Java认证课程|Python认证培训课程
潮流资源
Python教程|JavaScript教程|Java教程|Angular教程|Node.js教程|Docker教程|Git教程|Kubernetes教程|Power BI教程|CSS教程
smpl_2022-01-29
- 免责声明
- PMP、PMI、PMBOK、CAPM、PgMP、PfMP、ACP、PBA、RMP、SP和OPM3是美国项目管理协会的注册商标。