快速在Ubuntu18.04系统中离线部署深度学习环境

快速在Ubuntu18.04系统中离线部署深度学习环境

本文部署的环境前提为电脑上新装的Ubuntu18.04并且没有联网,一切所需的软件均通过离线包安装,旨在模拟实际项目部署中的过程,文章中提及的资源文件在文章最底部,不包含镜像,根据自己的需要去拉取镜像即可。

一、服务器部署流程
1、安装显卡驱动cuda、cudnn
# 安装gcc和make
cd ~/dockerDeploy/pool && sudo ./install.sh
# 重启服务器
sudo reboot
# 安装显卡驱动
首先卸载先前的所有驱动 sudo apt-get remove --purge nvidia*
禁用nouveau驱动 sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
添加以下两行
blacklist nouveau
options nouveau modeset=0
重新生成 kernel initramfs,使更改生效 update-initramfs –u  重启设备输入lsmod | grep nouveau验证驱动是否被禁用,如果没有输出则表明禁用成功
cd ~/dockerDeploy/driver
sudo chmod +x NVIDIA-Linux-x86_64-515.105.01.run
sudo ./NVIDIA-Linux-x86_64-515.105.01.run –no-opengl-files
# 重启后输入nvidia-smi可以看到显卡驱动情况
2、安装DOCKER
sudo cp ~/dockerDeploy/docker/ /opt/ -r
cd /opt/docker
sudo sh install.sh docker-24.0.2.tgz
# 输入sudo docker --version查看docker版本
3、安装nvidia-container-toolkit
cd ~/dockerDeploy/nvidia-container-toolkit
sudo ./install.sh
# 输入nvidia-container-toolkit -version查看版本
4、载入镜像
cd ~/dockerDeploy/images
sudo docker load -i triton.tar # 载入trition-server镜像
sudo docker load -i gtx2080.tar    # 载入代码运行环境的镜像

载入镜像成功后,输入sudo docker images可以查看目前已有镜像

5、启动Triton镜像
sudo docker run -it --gpus all --rm -p8000:8000 -p8001:8001 -p8002:8002 -v/home/bvision/model_repository/models:/models -v/home/bvision/model_repository/plugins:/plugins --env LD_PRELOAD=/plugins/libmyplugins.so nvcr.io/nvidia/tritonserver:20.11-py3 tritonserver --model-repository=/models

首先将模型仓库model_repository文件夹拷贝进服务器中的/home/bvision/中,然后输入以上的命令。

以上为启动Triton的命令,这条命令中的-it代表使用一个可以交互的终端,-p代表端口的映射关系,宿主机的8000端口对应于容器中的8000端口,-v代表文件夹的映射,本机的/home/bvision/model_repository/models目录对应于容器中的/models目录,21.07-py3为Triton镜像的TAG。

6、启动代码运行镜像
sudo docker run -it --gpus all -v/home/bvision/XuZhou_3:/home --name env gtx2080:1.0 /bin/bash

通过以上命令能通过cuda11.4_gtx2080_tensorrt镜像创建出一个名为test的容器,使用以下命令可以创建出一个终端进入到容器中进行操作:

sudo docker exec -it env /bin/bash

此时宿主机-服务器的/home/bvision/run文件夹映射到容器中的/home目录,在容器终端里进入home目录即可看到宿主机/home/bvision/run文件夹中的所有文件,业务逻辑代码均在此处。

二、制作镜像

首先下载docker,建议版本高于19.0,低于此版本的docker要使用GPU较为麻烦,docker在19.03版本后就不需要安装nvidia-docker就能获得GPU的计算支持,仅需要安装安装nvidia-container-toolkit即可。
如果需要自定义各软件版本可以拉取一个基础镜像如ubuntu的镜像。

sudo docker pull ubuntu:18.04
#创建一个名为test的容器并进入,使用GPU设备,-it代表使用一个可以交互的终端
sudo docker run -it --gpus all --name test -v/home/bvision/test:/home /bin/bash 

进入容器后按照正常的使用方法,配置好所需的环境,当配置好环境后可以通过以下命令导出:

sudo docker save -o xxx.tar 镜像名:tag
sudo docker export 容器CONTAINER ID > 导出地址文件名
# 与之相对应的导入命令为:
sudo docker load -i xxx.tar #已包含了tag信息
sudo docker import xxx.tar REPOSITORY:TAG

如果要像git一样保存多个版本的容器可以使用commit命令,这会将容器此时的状态转换为一个镜像存储。

sudo docker commit -m="描述信息" -a="作者" 容器ID 要创建的镜像名:[标签名]
三、资源文件链接(百度网盘)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值