docker 配置使用宿主机的GPU(ubuntu16.04+cuda10.0+cudnn7)
1. 安装 Docker
- 卸载旧版本
Docker
sudo apt-get remove docker docker-engine docker.io containerd runc
- 安装新版本
sudo apt-get update
sudo apt-get install \ca-certificates \curl \gnupg \lsb-releasecurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgecho \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
其它安装方式请参考:
https://docs.docker.com/engine/install/ubuntu/
2. 安装 nvidia-docker
- 若
docker
版本 > 19.03 则不需要安装nvidia-docker
,只需要安装nvidia-container-tookit
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 | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker
验证安装是否成功
sudo docker run --rm --gpus all nvidia/cuda:10.0-base nvidia-smi
输出结果:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 410.93 Driver Version: 410.93 CUDA Version: 10.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 1080 On | 00000000:01:00.0 Off | N/A |
| 37% 22C P8 14W / 180W | 0MiB / 8119MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 GeForce GTX 1080 On | 00000000:82:00.0 Off | N/A |
| 37% 20C P8 9W / 180W | 0MiB / 8119MiB | 0% Default |
+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
其它测试命令,详情参考:
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/user-guide.html
#### Test nvidia-smi with the latest official CUDA image
docker run --gpus all nvidia/cuda:10.0-base nvidia-smi# Start a GPU enabled container on two GPUs
docker run --gpus 2 nvidia/cuda:10.0-base nvidia-smi# Starting a GPU enabled container on specific GPUs
docker run --gpus '"device=1,2"' nvidia/cuda:10.0-base nvidia-smi
docker run --gpus '"device=UUID-ABCDEF,1"' nvidia/cuda:10.0-base nvidia-smi# Specifying a capability (graphics, compute, ...) for my container
# Note this is rarely if ever used this way
docker run --gpus all,capabilities=utility nvidia/cuda:10.0-base nvidia-smi
- 若
docker
版本 < 19.03,则需要安装nvidia
官方提供的nvidia-docker
NVIDIA Docker
地址:
https://github.com/NVIDIA/nvidia-docker
https://www.cnblogs.com/qinlulu/p/14671420.html
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker
3. 下载cuda/nvidia-ubuntu镜像
docker
镜像官网:https://hub.docker.com/ ,输入 nvidia/cuda
选择对应的版本。
4. 使用 Dockerfile 构建镜像
直接基于 nvida/cuda
,使用 DockerFile
构建一个镜像
docker build -t docker_image_name .
DockerFile
内容:
FROM nvidia/cuda:10.0-cudnn7-runtime-ubuntu16.04RUN cat /etc/apt/sources.list && apt-get clean && apt-get -y update --fix-missing
RUN apt-get -y install python3.6 python3-pip && ln -s /usr/bin/python3.6 /usr/bin/python && ln -s /usr/bin/pip3 /usr/bin/pip
RUN apt-get install -y libsm6 libxrender1 libxext-dev
#安装需要的库
RUN pip install -i https://mirrors.aliyun.com/pypi/simple/ web.py torch==1.3.1 torchvision==0.4.2 opencv-python scipy flask
RUN apt-get clean && rm -r ~/.cache/pip
其它 Dockerfile
# BASE IMAGE
FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu16.04 SHELL ["/bin/bash","-c"]WORKDIR /tmp
# copy安装文件
COPY Python-3.6.9.tar.xz /tmp
# 设置 root 密码
RUN echo 'root:password' | chpasswd \
# 安装openssh-server 并配置&& apt-get update && apt-get -y install openssh-server \&& sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config \ && sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config \&& mkdir /var/run/sshd \
# 安装python依赖包&& apt-get -y install build-essential python-dev python-setuptools python-pip python-smbus \&& apt-get -y install build-essential libncursesw5-dev libgdbm-dev libc6-dev \&& apt-get -y install zlib1g-dev libsqlite3-dev tk-dev \&& apt-get -y install libssl-dev openssl \&& apt-get -y install libffi-dev \
# 安装python 3.6.9&& mkdir -p /usr/local/python3.6 \&& tar xvf Python-3.6.9.tar.xz \&& cd Python-3.6.9 \&& ./configure --prefix=/usr/local/python3.6 \&& make altinstall \
# 建立软链接&& ln -snf /usr/local/python3.6/bin/python3.6 /usr/bin/python3 \&& ln -snf /usr/local/python3.6/bin/pip3.6 /usr/bin/pip3\
# 安装pytorch&& mkdir ~/.pip && echo -e '[global] \nindex-url = https://mirrors.aliyun.com/pypi/simple/' >> ~/.pip/pip.conf \&& pip3 install torch===1.2.0 torchvision===0.4.0 -f https://download.pytorch.org/whl/torch_stable.html \
# 清理copy的安装文件&& apt-get clean \&& rm -rf /tmp/* /var/tmp/*EXPOSE 22CMD ["/usr/sbin/sshd", "-D"]
参考:
https://www.cnblogs.com/qinlulu/p/14671420.html
https://www.cnblogs.com/shoufu/p/12904832.html
https://blog.csdn.net/weixin_43590796/article/details/114848742#commentBox
https://blog.csdn.net/submarineas/article/details/115558769
docker 配置使用宿主机的GPU(ubuntu16.04+cuda10.0+cudnn7)相关推荐
- Ubuntu16.04+cuda10.0+cudnn7.6配置tensorflow1.x环境
现阶段有多种深度学习框架,应用较多的主要是tensorflow.pytorch以及百度公司的paddlepaddle.个人刚开始使用的深度学习框架是基于pytorch的mmdetection,来自于商 ...
- 成功安装ubuntu16.04+cuda9.0+cuDNN7.0.5+caffe+digits(附错误汇总)
成功安装ubuntu16.04+cuda9.0+cuDNN7.0.5+caffe+digits(附错误汇总) 本机硬件:双核i7 内存8G 显卡GTX070(不好意思,比较水) 安装顺序:依赖包--& ...
- DL之IDE:深度学习之计算机视觉开发环境搭建的详细流程(Ubuntu16.04+cuda9.0+cuDNN7.4.2+tensorflow_gpu)
DL之IDE:深度学习之计算机视觉开发环境搭建的详细流程(Ubuntu16.04+cuda9.0+cuDNN7.4.2+tensorflow_gpu) 目录 1.安装nvidia驱动 2.安装CUDA ...
- Ubuntu16.04 + Cuda-9.0 + Cudnn-7.1.4 + TensorFlow1.8(极其简单)
步骤 1.Ubuntu16.04 LTS 2.配置Nvidia显卡驱动 3.Cuda-9.0 4.Cudnn-7.1.4 5.TensorFlow1.8 1. Ubuntu16.04 LTS 安装Ub ...
- 深度学习环境配置 (Ubuntu18.04 + CUDA10.0 + cuDNN7.6.5 + TensorFlow2.0)
@ Bergen, Norway 第一次安装 CUDA 的过程简直抓狂,中间出现了很多次莫名其妙的 bug,踩了很多坑.比如装好了 CUDA 重启后进不去桌面系统了,直接黑屏.比如鼠标键盘都不 wor ...
- cuda8.0.44linux.run,ubuntu16.04 cuda8.0 cudnn7.0 安装
cuda 8.0 安装: sudo sh ./cuda_8.0.44_linux.run (可通过sudo sh ./cuda_8.0.44_linux.run --help查看一些参数命令,安装某一 ...
- ubuntu16.04+cuda9.0+cudnn7.0+caffe
准备工作 删除原有cuda sudo apt autoremove cuda 删除原有软件更新 系统设置-软件和更新-其他软件 cuda9.0 下载链接: cuda9.0 在下载目录打开termina ...
- ubuntu16.04+cuda8.0+cudnn5.1+caffe 安装(基于独立主机集成显卡GTX1080Ti)
最近开始配置自己的深度学习主机,由于之前只在笔记本上和单显卡主机上安装过,所以可以说是zero经验,以至于很多问题不了解都当成了bug,故为了方便以后的自己以及大众,特在此写下post一篇.(由于可能 ...
- cuda8.0.44linux.run,ubuntu16.04+cuda8.0+cudnn6+tensorflow(gpu)1.4,一遍成功
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 0 python环境(ubuntu16.04自带2.7.12)0.1 查看python版本与安装路径1 2 3 4pyt ...
最新文章
- 29个月过去了,CSDN排名前200了:排名不断靠前的过程中,自己的技术水平和竞争力一定会不断向上...
- wireshark过虑规则
- python心理学实验程序_psychopy coder模式编写心理试验程序 字符程序和记录反应时...
- JAVA入门级教学之(continue)
- 宁愿“大小周”、每天只写 200 行代码、月薪 8k-17k 人群再涨 | 揭晓中国开发者真实现状
- 论文笔记总结_S2D_从稀疏到稠密
- 正则十八式-第三式:龙跃于渊
- 1.2. Container Overview
- matlab日期转儒略历,matlab儒略日转为日期
- 基于javaweb的大学生兼职系统(java+springboot+jsp+mysql)
- WIN7 直装版安装教程
- java背单词软件_背单词的java小软件
- java中的画图公式_GitHub - oneSaber/Compiler-java: 函数绘图语言java实现
- win10如何更改计算机用户名,手把手教你win10下怎么修改账户用户名
- 法语初级学习笔记-04-单词
- vue-pdf插件实现pdf文档预览(自动分页预览)——基础积累
- 访问空指针一定会使程序死掉吗
- 出生日期算年龄html,Javascript从出生日期算起的年龄
- C#开发Android App--01--准备工具
- 数码照片的文件高级信息获取