当前位置: 首页 > news >正文

网站网站制作巧克力网站模板

网站网站制作,巧克力网站模板,网页设计个人网站设计,石家庄防疫最新政策Kubernetes Docker 从零部署一个yolov5检测服务#xff0c;服务基于PaddlePaddle/FastDeploy的服务化部署#xff1b;所有软件从零安装。 文章目录1.说明2.环境3.安装过程 3.1安装 Docker 3.2安装 minikube 3.3安装 Kubectl4.部署过程 4.1 Docker相关 4.2 k8s相关 4.3 启动服…Kubernetes Docker 从零部署一个yolov5检测服务服务基于PaddlePaddle/FastDeploy的服务化部署所有软件从零安装。 文章目录1.说明2.环境3.安装过程· 3.1安装 Docker· 3.2安装 minikube· 3.3安装 Kubectl4.部署过程· 4.1 Docker相关· 4.2 k8s相关· 4.3 启动服务· 4.4 客户端测试五.总结六.引用1.说明 基于k8s的minikube部署一个单节点服务重了解在部署流程和细节。服务基于CPU部署。 2.环境 WSL2 Ubuntu 18.04 kubernetes v1.23.8 Docker 23.0.0 PaddlePaddle/FastDeploy 3.安装过程 · 3.1安装 Docker #1. 新软件列表和允许使用https sudo apt-get update sudo apt-get install ca-certificates curl gnupg lsb-release #2.添加阿里源的GPG curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg#3.设置阿里源的docker仓库echo deb [arch$(dpkg --print-architecture) signed-by/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null#4.安装docker:#4.1更新apt-get sudo apt-get update#4.2安装最新的docker版本 sudo apt-get install docker-ce docker-ce-cli containerd.io#4.3启动docker sudo service docker start#4.4查看docker服务状态 sudo service docker status· 3.2安装 minikube curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 sudo install minikube-linux-amd64 /usr/local/bin/minikube这里启动大约要5分钟 #启动k8s,使用docker为引擎. minikube start --force --driverdocker --kubernetes-versionv1.23.8验证minikube启动情况 minikube kubectl get ns #显示一下说明成功 rootDESKTOP-4J64IFF:~# minikube kubectl get ns NAME STATUS AGE default Active 8d kube-node-lease Active 8d kube-public Active 8d kube-system Active 8d kubernetes-dashboard Active 8d· 3.3安装 Kubectl 安装 curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl chmod x ./kubectl sudo mv ./kubectl /usr/local/bin/kubectl kubectl version --client测试 kubectl get pod -A4.部署过程 · 4.1 Docker相关 下载CPU镜像仅支持Paddle/ONNX模型在CPU上进行服务化部署支持的推理后端包括OpenVINO、Paddle Inference和ONNX Runtime。 docker pull registry.baidubce.com/paddlepaddle/fastdeploy:1.0.2-cpu-only-21.10下载部署代码及模型等 #下载部署示例代码 git clone https://github.com/PaddlePaddle/FastDeploy.git cd FastDeploy/examples/vision/detection/yolov5/serving/#下载yolov5模型文件和测试图片 wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg wget https://bj.bcebos.com/paddlehub/fastdeploy/yolov5s.onnx# 将模型放入 models/runtime/1目录下, 并重命名为model.onnx mv yolov5s.onnx models/runtime/1/model.onnx启动docker测试服务可跳过 ######################### 服务端 ############################## cd FastDeploy/examples/vision/detection/yolov5/serving/ # 手动启动docker docker run -it --nethost --name fd_serving -v pwd/:/yolov5_serving registry.baidubce.com/paddlepaddle/fastdeploy:x.y.z-cpu-only-21.10 bash #启动服务 fastdeployserver --model-repository/yolov5_serving/models --backend-configpython,shm-default-byte-size10485760#服务启动成功后 会有以下输出: #I0928 04:51:15.784517 206 grpc_server.cc:4117] Started GRPCInferenceService at 0.0.0.0:8001 #I0928 04:51:15.785177 206 http_server.cc:2815] Started HTTPService at 0.0.0.0:8000 #I0928 04:51:15.826578 206 http_server.cc:167] Started Metrics Service at 0.0.0.0:8002######################### 客户端 ############################## cd FastDeploy/examples/vision/detection/yolov5/serving/ #安装端依赖 python3 -m pip install tritonclient[all] # 发送请求 python3 yolov5_grpc_client.py#发送请求成功后会返回json格式的检测结果并打印输出: #output_name: detction_result #{boxes: [[268.48028564453125, 81.05305480957031, 298.69476318359375, 169.43902587890625], [104.73116302490234, 45.66197204589844, 127.58382415771484, 93.44938659667969], [378.9093933105469, 39.75013732910156, 395.6086120605469, 84.24342346191406], [158.552978515625, 80.36149597167969, 199.18576049804688, 168.18191528320312], [414.37530517578125, 90.94805908203125, 506.3218994140625, 280.40521240234375], [364.00341796875, 56.608917236328125, 381.97857666015625, 115.96823120117188], [351.7251281738281, 42.635345458984375, 366.9103088378906, 98.04837036132812], [505.8882751464844, 114.36674499511719, 593.1248779296875, 275.99530029296875], [327.7086181640625, 38.36369323730469, 346.84991455078125, 80.89302062988281], [583.493408203125, 114.53289794921875, 612.3546142578125, 175.87353515625], [186.4706573486328, 44.941375732421875, 199.6645050048828, 61.037628173828125], [169.6158905029297, 48.01460266113281, 178.1415557861328, 60.88859558105469], [25.81019401550293, 117.19969177246094, 59.88878631591797, 152.85012817382812], [352.1452941894531, 46.71272277832031, 381.9460754394531, 106.75212097167969], [1.875, 150.734375, 37.96875, 173.78125], [464.65728759765625, 15.901412963867188, 472.512939453125, 34.11640930175781], [64.625, 135.171875, 84.5, 154.40625], [57.8125, 151.234375, 103.0, 174.15625], [165.890625, 88.609375, 527.90625, 339.953125], [101.40625, 152.5625, 118.890625, 169.140625]], scores: [0.8965693116188049, 0.8695310950279236, 0.8684297800064087, 0.8429877758026123, 0.8358422517776489, 0.8151364326477051, 0.8089362382888794, 0.801361083984375, 0.7947245836257935, 0.7606497406959534, 0.6325908303260803, 0.6139386892318726, 0.5906146764755249, 0.505328893661499, 0.40457233786582947, 0.3460320234298706, 0.33283042907714844, 0.3325657248497009, 0.2594234347343445, 0.25389009714126587], label_ids: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 24, 24, 33, 24], masks: [], contain_masks: False} 编写Dockerfile FROM registry.baidubce.com/paddlepaddle/fastdeploy:1.0.2-cpu-only-21.10## 编写人MAINTAINER xxx# 在docker容器构建时拷贝程序ADD ./FastDeploy-develop /opt/FastDeploy-develop# 容器暴露的端口号需要在容器中运行使用端口号一致EXPOSE 8000EXPOSE 8001# 容器启动之后执行的命令 java -jar ROOT.jarCMD [cd /opt/FastDeploy-develop/examples/vision/detection/yolov5/serving]CMD [fastdeployserver,--model-repository/opt/FastDeploy-develop/examples/vision/detection/yolov5/serving/models,--backend-configpython,shm-default-byte-size10485760]打包images docker build -t k8s_yolo_demo:latest .· 4.2 k8s相关 生成Deployment yaml kubectl create deployment demo --imagek8s_yolo_demo:latest -o yaml --dry-runclient demo.yaml #在本地路径下会生成demo.yaml修改demo.yaml apiVersion: apps/v1 kind: Deployment metadata:creationTimestamp: nulllabels:app: demoname: demo spec:replicas: 1selector:matchLabels:app: demostrategy: {}template:metadata:creationTimestamp: nulllabels:app: demospec:containers:- image: k8s_yolo_demoimagePullPolicy: IfNotPresentname: k8s_yolo_demoresources: {} ports:- containerPort: 8001 status: {}编写server yaml apiVersion: v1 kind: Service metadata:name: demo spec:type: NodePort #这里代表是NodePort类型的,另外还有ingress,LoadBalancer这里映射到本机IPports:- port: 8001 #这里的端口和clusterIP(kubectl describe service service-hello中的IP的port)对应即在集群中所有机器上curl 10.98.166.242:80可访问发布的应用服务。targetPort: 8001 #端口一定要和container暴露出来的端口对应nodejs暴露出来的端口是8081所以这里也应是8081nodePort: 31111 # 所有的节点都会开放此端口30000--32767此端口供外部调用。selector:app: demo #这里选择器一定要选择容器的标签之前写name:kube-node是错的。· 4.3 启动服务 # 首先启动 kubectl apply -f demo.yaml # 可能会报错 获取不到images # 这里demo.yaml 中添加 imagePullPolicy: IfNotPresent 已添加过了 # 这里使用cache方式获取images# 1.添加环境变量 使得k8s 使用docker eval $(minikube docker-env) # 2.把images添加到k8s的cache中去 minikube cache add k8s_yolo_demo # 3.从新加载启动 kubectl apply -f demo.yaml # 4.查看启动的pod 是否running kubectl get pods # 5.把images从k8s的cache中删掉 minikube cache delete k8s_yolo_demo# 6.启动server kubectl apply -f demo_server.yaml如图这里看到pod和server都正常启动了 · 4.4 客户端测试 # 查看本机IP ifconfig#修改客户端代码中的url url 192.168.49.1:31111python3 yolov5_grpc_client.py#发送请求成功后会返回json格式的检测结果并打印输出: #output_name: detction_result #{boxes: [[268.48028564453125, 81.05305480957031, 298.69476318359375, 169.43902587890625], [104.73116302490234, 45.66197204589844, 127.58382415771484, 93.44938659667969], [378.9093933105469, 39.75013732910156, 395.6086120605469, 84.24342346191406], [158.552978515625, 80.36149597167969, 199.18576049804688, 168.18191528320312], [414.37530517578125, 90.94805908203125, 506.3218994140625, 280.40521240234375], [364.00341796875, 56.608917236328125, 381.97857666015625, 115.96823120117188], [351.7251281738281, 42.635345458984375, 366.9103088378906, 98.04837036132812], [505.8882751464844, 114.36674499511719, 593.1248779296875, 275.99530029296875], [327.7086181640625, 38.36369323730469, 346.84991455078125, 80.89302062988281], [583.493408203125, 114.53289794921875, 612.3546142578125, 175.87353515625], [186.4706573486328, 44.941375732421875, 199.6645050048828, 61.037628173828125], [169.6158905029297, 48.01460266113281, 178.1415557861328, 60.88859558105469], [25.81019401550293, 117.19969177246094, 59.88878631591797, 152.85012817382812], [352.1452941894531, 46.71272277832031, 381.9460754394531, 106.75212097167969], [1.875, 150.734375, 37.96875, 173.78125], [464.65728759765625, 15.901412963867188, 472.512939453125, 34.11640930175781], [64.625, 135.171875, 84.5, 154.40625], [57.8125, 151.234375, 103.0, 174.15625], [165.890625, 88.609375, 527.90625, 339.953125], [101.40625, 152.5625, 118.890625, 169.140625]], scores: [0.8965693116188049, 0.8695310950279236, 0.8684297800064087, 0.8429877758026123, 0.8358422517776489, 0.8151364326477051, 0.8089362382888794, 0.801361083984375, 0.7947245836257935, 0.7606497406959534, 0.6325908303260803, 0.6139386892318726, 0.5906146764755249, 0.505328893661499, 0.40457233786582947, 0.3460320234298706, 0.33283042907714844, 0.3325657248497009, 0.2594234347343445, 0.25389009714126587], label_ids: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 24, 24, 33, 24], masks: [], contain_masks: False}五.总结 最有问题的还是pod IP映射的问题没搞清k8s的端口映射逻辑。本机由于虚拟机启动IP会变动为 192.168.49.1实际服务是之前启动的已经映射到了192.168.49.2上这里需要从新启动下server就会从新映射到当前IP。这里k8s获取docker image的方式也有问题这是测试无所谓了正式部署不会存在这种问题。GPU方式还没尝试有空了再试试主要是搭建环境比较麻烦。 六.引用 https://github.com/PaddlePaddle/FastDeploy/blob/develop/examples/vision/detection/yolov5/serving/README_CN.md https://www.jianshu.com/p/c8b42d5cda2d
http://www.w-s-a.com/news/138999/

相关文章:

  • 创建网站的工具站内seo优化
  • 网站特效 站长查询网网站
  • 百度移动端网站网站建设设计思想
  • 青岛建设官方网站南宁制作企业网站
  • 校园网站建设管理工作制度大网站开发费用
  • 做logo赚钱的网站分类网站 模板
  • 网站建设完成报告织梦网站怎么做备份
  • 邯郸市城乡建设管理局网站vimwiki wordpress
  • 如何修改wordpress站名如何制作公司网站
  • 宁波网站建设与推广方案网站有了备案号之后能做什么
  • 汕头手机端建站模板pinterest app下载
  • 网站主机免费宁波网站建设优化诊断
  • 吧网站做软件的软件下载简单的ui界面制作
  • 陕西网站制作公司网页制作与设计代码
  • 做网站行情郑州微信网站开发
  • 河间网站建设制作null wordpress theme
  • h5网站制作网站开发网站建设文翻译工作
  • 网站建设 税种秦皇岛哪有网站优化公司
  • 专业开发网站设计找人做网页需要多少钱
  • 手机购物网站 建站网站建设网站制作网站设计
  • 基于iview的网站开发模板小程序制作需要什么语言
  • 精美网站设计保定建行网站首页登录
  • 网站建设常见问题做网站保存什么格式最好
  • 营销型网站建设与网页设计网站建设 amp 找VX cp5173
  • 新网站该如何做网站优化呢儿童手工
  • 湖北现代城市建设集团网站搜索引擎优化的作用
  • 上海做网站吧开一家软件开发公司需要什么
  • 阿里巴巴网站建设改图片建设厅官方网站河南
  • 邓砚谷电子商务网站建设镇江网
  • 网站空间支持什么程序工作服款式