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

Docker部署YOLOv8训练+推理完整教程(含报错解决)

说明1、本教程适配Windows10/Ubuntu20.04/22.04全程一键复制命令无需配置Python、CUDA、PyTorch2、使用Ultralytics官方GPU镜像环境纯净、无版本冲突3、包含环境安装、容器部署、数据集制作、训练、推理、模型导出、全套报错解决方案4、训练必须Nvidia独立显卡CPU仅能推理训练速度极慢不推荐一、前置硬件软件要求1、硬件Nvidia独立显卡驱动版本≥515、空闲硬盘≥20G、内存≥8G2、软件无预装依赖仅需安装Docker3、核心优势容器隔离环境一次部署永久使用不会污染本地电脑环境二、安装Docker环境2.1 Windows系统安装Docker1、下载Docker Desktophttps://www.docker.com/products/docker-desktop/2、默认路径安装安装完成重启电脑3、打开PowerShell输入以下命令验证安装成功docker --version4、Docker设置开启GPU支持Settings → Features → 勾选【Use the WSL 2 based engine】、【Enable GPU support】重启Docker2.2 Ubuntu系统安装Docker复制全部命令一键执行sudo apt update sudo apt install docker.io -y sudo systemctl start docker sudo systemctl enable docker2.3 安装Nvidia GPU容器支持必装Ubuntu系统一键安装curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg distribution$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | sed s#deb https://#deb [signed-by/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt update sudo apt install -y nvidia-container-toolkit sudo systemctl restart docker2.4 验证GPU环境是否正常通用验证命令Windows/Ubuntu通用docker run --rm --gpus all nvidia/cuda:11.8.0-base-ubuntu22.04 nvidia-smi输出显卡信息 环境正常报错 显卡驱动过低/未开启GPU支持查看文末排错方案三、拉取YOLOv8官方镜像官方镜像内置CUDA、PyTorch、YOLOv8全部依赖一键拉取docker pull ultralytics/ultralytics:latest四、创建本地工作目录持久化数据作用容器删除后数据集、训练权重、结果依然保存在本地4.1 Windows创建目录手动新建文件夹D:\yolo_workspace内部新建三个子文件夹datasets、runs、weights4.2 Ubuntu一键创建目录mkdir -p ~/yolo_workspace/datasets mkdir -p ~/yolo_workspace/runs mkdir -p ~/yolo_workspace/weights五、启动YOLOv8容器核心命令5.1 Windows启动命令PowerShell执行docker run -it --gpus all ^ -v D:\yolo_workspace:/usr/src/ultralytics ^ -p 8080:8080 ^ ultralytics/ultralytics:latest5.2 Ubuntu启动命令docker run -it --gpus all \ -v ~/yolo_workspace:/usr/src/ultralytics \ -p 8080:8080 \ ultralytics/ultralytics:latest出现rootxxx:/usr/src/ultralytics#即进入训练环境部署完成后续重新进入容器命令docker start -ai 容器ID六、环境测试确保可正常运行6.1 测试推理yolo predict modelyolov8n.pt sourcebus.jpg6.2 测试快速训练5轮快速验证yolo train modelyolov8n.pt datacoco8.yaml epochs5 imgsz640运行无报错、生成结果文件 环境完全正常七、自定义数据集配置标准YOLO格式7.1 固定数据集目录结构将数据集放入yolo_workspace/datasets/自定义文件夹名示例my_datasetmy_dataset/ ├── images/ │ ├── train/ # 训练集图片 │ └── val/ # 验证集图片 ├── labels/ │ ├── train/ # 训练集txt标签 │ └── val/ # 验证集txt标签 └── data.yaml # 数据集配置文件7.2 编写data.yaml配置文件直接复制修改path: /usr/src/ultralytics/datasets/my_dataset train: images/train val: images/val nc: 2 names: 0: cat 1: dog修改说明nc为类别总数names对应自己的目标类别其余内容无需改动八、自定义数据集训练命令小白通用yolo train \ modelyolov8n.pt \ datadatasets/my_datset/data.yaml \ epochs100 \ imgsz640 \ batch8 \ device0参数解释model预训练权重n/s/m/l/x从小到大速度递减、精度递增epochs训练轮数通用100-300轮imgsz推理尺寸固定640即可batch批次大小显存4G改4、2G改2device指定0号GPU训练训练结果路径本地yolo_workspace/runs/train/exp自动递增文件夹best.pt最优模型权重实际部署使用last.pt最后一轮模型权重继续训练使用九、模型推理、验证、导出命令9.1 模型推理测试yolo predict \ modelruns/train/exp/weights/best.pt \ sourcedatasets/my_dataset/images/val \ saveTrue9.2 模型精度验证yolo val modelruns/train/exp/weights/best.pt datadatasets/my_dataset/data.yaml9.3 导出ONNX/TensorRT部署模型# 导出ONNX yolo export modelruns/train/exp/weights/best.pt formatonnx # 导出TensorRT高速推理 yolo export modelruns/train/exp/weights/best.pt formatengine十、继续上次未完成的训练yolo train modelruns/train/exp/weights/last.pt resumeTrue原因未开启GPU支持/显卡驱动版本过低解决更新Nvidia官方驱动≥515Windows开启Docker GPU支持重启Docker
http://www.zskr.cn/news/1362203.html

相关文章:

  • 【Markdown零基础使用教程】
  • 2026年乌鲁木齐先装后付装修公司top5实践经验案例分享
  • CANN 昇腾 FP16 vs FP32 精度博弈:深度学习数值精度实战指南
  • llm-compressor添加新量化策略 -- 邪修方法
  • CANN 昇腾训练食谱全景解读:cann-recipes-train 架构与使用指南
  • 2026系统运维培训机构点评榜|真机实战、就业兜底怎么选?资深运维一次讲透
  • 置信预测中APS与RAPS的覆盖差距:效率与可靠性的权衡
  • 2026南京娱乐许可证办理优质服务商推荐:南京农药兽药许可证办理/南京出版物许可证办理/南京危化品许可证办理/南京增值电信许可证办理/选择指南 - 优质品牌商家
  • 在Ubuntu 20.04上从源码编译Asterisk 18:保姆级避坑指南(解决pjproject、jansson依赖问题)
  • 鸿蒙electron跨端框架PC课业板实战:课程、截止时间、提交物和风险都放到桌面上
  • Cortex-R MPU配置与推测访问风险防范
  • 团队协作项目开发流程复盘:为什么需求分析之后一定要做原型评审?
  • 1000个文件重命名,1秒完成!批量文件重命名软件
  • 机环交互会产生新形态的机器智能吗?
  • 最小生成树 详解
  • 2026年现阶段,如何选择武汉诚信的沸石转轮+RTO设备服务商?武汉润华环保设备领航者深度解析 - 2026年企业推荐榜
  • 从‘搭积木’到‘懂原理’:手把手拆解CNN-BiLSTM,用Python预测股价为什么有效(附完整代码)
  • 2026煤矿用涂塑复合钢管品牌推荐榜:聚氨酯保温管材、聚氨酯保温钢管、聚氨酯发泡保温管、聚氨酯成品保温管、聚氨酯热水保温管选择指南 - 优质品牌商家
  • 官宣了,黎家盈成为港澳地区的首位航天员!
  • 前端实习面试手写题分享
  • 2026年5月4日 OCS技术方案路线选择与优劣深度调研报告
  • 2026南京本地推广公司推荐榜:腾讯元宝推广公司/苏州抖音代运营公司/苏州本地推广公司/门窗行业线上怎么获客/高端全屋定制IP打造团队/选择指南 - 优质品牌商家
  • Ettin Reranker 出了一整个家族,我帎你把选哪个说清楚
  • 为什么你的渐变总像PPT?揭秘Midjourney v6.2中未公开的--color-bleed机制与渐变锚点定位技术
  • 超详细图解Attention机制:从原理到Self-Attention、多头注意力全覆盖
  • 【深度解析】制造业选AI Agent,应看重行业经验还是通用能力?
  • 从纸质报表到Excel:PaddleOCR+Python自动化识别复杂表格(附完整代码)
  • 2026进户门精选:四川保温门/四川入户门/四川别墅入户门/四川加厚防盗门/四川单开门/四川子母门/四川安全门/选择指南 - 优质品牌商家
  • 工具变量评估与合成:从核心原理到机器学习实践
  • 如何在Mac上实现NTFS完美读写:Free NTFS for Mac终极指南