MMDeploy部署实战系列【第一章】:Docker,Nvidia-docker安装

MMDeploy部署实战系列【第一章】:Docker,Nvidia-docker安装

⭐️ ⭐️ ⭐️ 这个系列是一个随笔,是我走过的一些路,有些地方可能不太完善。如果有那个地方没看懂,评论区问就可以,我给补充。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

目录:

0️⃣ mmdeploy源码安装 (转换faster rcnn r50/yolox为tensorrt,并进行推理)_gy77

内容:一文包含了在Linux系统下安装mmdeploy模型转换环境,模型转换为TensorRT,在Linux,Windows下模型推理,推理结果展示。

MMDeploy部署实战系列 :

1️⃣ MMDeploy部署实战系列【第一章】:Docker,Nvidia-docker安装_gy77

内容:docker/nvidia-docker安装,docker/nvidia-docker国内源,docker/nvidia-docker常用命令。

2️⃣ MMDeploy部署实战系列【第二章】:mmdeploy安装及环境搭建_gy77

内容:mmdeploy环境安装三种方法:源码安装,官方docker安装,自定义Dockerfile安装。

3️⃣ MMDeploy部署实战系列【第三章】:MMdeploy pytorch模型转换onnx,tensorrt_gy77

内容:如何查找pytorch模型对应的部署配置文件,模型转换示例:mmcls:resnext50,mmdet:yolox-s,faster rcnn50。

4️⃣ MMDeploy部署实战系列【第四章】:onnx,tensorrt模型推理_gy77

内容:在linux,windows环境下推理,Windows下推理环境安装,推理速度对比,显存对比,可视化展示。

5️⃣ MMDeploy部署实战系列【第五章】:Windows下Release x64编译mmdeploy(C++),对TensorRT模型进行推理_gy77

内容:Windows下环境安装编译环境,编译c++ mmdeploy,编译c++ mmdeploy demo,运行实例。

6️⃣ MMDeploy部署实战系列【第六章】:将编译好的MMdeploy导入到自己的项目中 (C++)_gy77

内容:Windows下环境导入我们编译好的mmdeploy 静态/动态库。

下面是正文:


docker

docker常用命令

docker info           # 查看docker信息
docker -v             # 查看docker版本
docker images           # 查看docker所有的镜像
docker ps -a             # 查看docker所有的容器
docker rm ${容器id}     # 删除容器
docker rmi ${镜像id}  # 删除镜像  -f:强制删除;
docker cp ${本地文件的路径} ${容器id}:${容器内文件路径}    # 传输文件,宿主机->容器
docker cp ${容器id}:${容器内文件路径} ${本地文件的路径}    # 传输文件,容器->宿主机
docker start ${容器id}  # 启动容器
docker attach ${容器id}  #进入容器
Ctrl+D # 退出容器

Docker中容器和镜像的关系【通俗易懂】

docker卸载与安装

参考网址: ubuntu上docker卸载重装

按照上边的方法安装好docker后

docker国内源配置

不配制国内源镜像根本拉取不下来,全是报错,所以这一步很重要。

1️⃣ ubantu需要先新建个daemon.json文件

sudo touch /etc/docker/daemon.json
sudo vim /etc/docker/daemon.json

把下面内容复制到daemon.json文件下:

{
    "registry-mirrors": [
        "https://registry.docker-cn.com",
        "https://docker.mirrors.ustc.edu.cn",
        "http://hub-mirror.c.163.com"
    ]
}

2️⃣ 重启docker

service docker restart

3️⃣ 检验是否成功

docker info

Registry Mirrors:出现下面信息就是配置成功了

 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Registry Mirrors:
  https://registry.docker-cn.com/
  https://docker.mirrors.ustc.edu.cn/
  http://hub-mirror.c.163.com/
 Live Restore Enabled: false

nvidia-docker

参考博文:nvidia-docker安装 - 知乎 (zhihu.com)

nvidia-docker安装

# 设置stable存储库和密钥
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
   && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
   && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list

# 安装nvidia-docker2安装包
sudo apt-get update
sudo apt-get install -y nvidia-docker2

# 重启docker
sudo systemctl restart docker

# 用官方container测试是否安装成功,出现nvidia-smi的结果就是成功了
sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi

nvidia-docker国内源配置

1️⃣ ubantu需要先新建个daemon.json文件

sudo vim /etc/docker/daemon.json

nvidia-docker修改后的daemon.json文件如下:

{
    "registry-mirrors": ["https://registry.docker-cn.com", "https://docker.mirrors.ustc.edu.cn", "http://hub-mirror.c.163.com"],        
    "runtimes": {
        "nvidia": {
            "path": "nvidia-container-runtime",
            "runtimeArgs": []
        }
    }
}

2️⃣ 重启docker

systemctl restart docker.service

3️⃣ 检验是否成功

docker info

Registry Mirrors:出现下面信息就是配置成功了

 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Registry Mirrors:
  https://registry.docker-cn.com/
  https://docker.mirrors.ustc.edu.cn/
  http://hub-mirror.c.163.com/
 Live Restore Enabled: false

你可能感兴趣的:(MMDeploy部署实战系列,mmdetection,mmdeploy)