广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >CentOS7 Nvidia Docker环境如何搭建
  • 401
分享到

CentOS7 Nvidia Docker环境如何搭建

2024-04-02 19:04:59 401人浏览 泡泡鱼
摘要

本文小编为大家详细介绍“Centos7 Nvidia Docker环境如何搭建”,内容详细,步骤清晰,细节处理妥当,希望这篇“CentOS7 Nvidia Docker环境如何搭建”文章能帮助大家解决疑惑,

本文小编为大家详细介绍“Centos7 Nvidia Docker环境如何搭建”,内容详细,步骤清晰,细节处理妥当,希望这篇“CentOS7 Nvidia Docker环境如何搭建”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

环境:

系统:centos7 7.4 1708

显卡:nvidia 1080ti

下载所有需要的东东

1、docker-ce yum repo :

2、nvidia-docker yum repo :

3、nvidia cuda yum repo :

4、nvidia cudnn :

这个东西需要注册nvidia账号,就不给直接下载地址了。

5、nvidia驱动

按自己的显卡型号下载

6、nvidia docker file :

这里面可以看到很多dockerfile,选择

9.0-base-centos7 (9.0/base/dockerfile)

其他的cuda9.1这些应该也可以用,另外有像devel和runtime这样的,其实就是yum安装的cuda包不太一样,没多大关系。

点进去后复制下来保存为dockerfile文件,但是之后搞的时候发现有点问题,修改了一下,可以从这儿复制

from centos:7

label maintainer "nvidia corporation <cudatools@nvidia.com>"

run nvidia_gpgkey_sum=d1be581509378368edeec8c1eb2958702feedf3bc3D17011adbf24efacce4ab5 && \

  curl -fssl https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/7fa2af80.pub | sed '/^version/d' > /etc/pki/rpm-gpg/rpm-gpg-key-nvidia && \

  echo "$nvidia_gpgkey_sum /etc/pki/rpm-gpg/rpm-gpg-key-nvidia" | sha256sum -c --strict -

#copy cuda.repo /etc/yum.repos.d/cuda.repo

env cuda_version 9.0.176

env cuda_pkg_version 9-0-$cuda_version-1

#run yum install -y \

#    cuda-cudart-$cuda_pkg_version && \

#  ln -s cuda-9.0 /usr/local/cuda && \

#  rm -rf /var/cache/yum/*
# nvidia-docker 1.0

label com.nvidia.volumes.needed="nvidia_driver"

label com.nvidia.cuda.version="${cuda_version}"

run echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \

  echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf

env path /usr/local/nvidia/bin:/usr/local/cuda/bin:${path}

env ld_library_path /usr/local/nvidia/lib:/usr/local/nvidia/lib64

# nvidia-container-runtime

env nvidia_visible_devices all

env nvidia_driver_capabilities compute,utility

env nvidia_require_cuda "cuda>=9.0"

所有的文件

[root@localhost nvidia]# pwd
/root/nvidia
[root@localhost nvidia]# ll
total 420000
drwxr-xr-x. 2 root root   4096 feb 10 10:50 centos-gpu
-rw-r--r--. 1 root root   3335 jan 29 10:36 cuda-repo-rhel7-9.1.85-1.x86_64.rpm
-rw-r--r--. 1 root root 348817823 feb 6 16:26 cudnn-9.0-linux-x64-v7.tgz
-rw-r--r--. 1 root root   2424 feb 9 10:36 docker-ce.repo
-rw-r--r--. 1 root root    796 feb 9 17:11 nvidia-docker.repo
-rwxr-xr-x. 1 root root 81242220 jan 31 14:19 nvidia-linux-x86_64-390.25.run

centos-gpu里有dockerfile文件

准备工作

直接上命令,一看就明白

[root@localhost nvidia]# cp docker-ce.repo nvidia-docker.repo /etc/yum.repos.d/
[root@localhost nvidia]# rpm -ivh cuda-repo-rhel7-9.1.85-1.x86_64.rpm
[root@localhost nvidia]# yum install epel-release
[root@localhost nvidia]# yum install GCc gcc-c++

[root@localhost nvidia]# yum install kernel*

安装驱动

[root@localhost nvidia]# echo "blacklist nouveau" >>/etc/modprobe.d/blacklist.conf
[root@localhost nvidia]# mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak dracut -v /boot/initramfs-$(uname -r).img $(uname -r) 
[root@localhost nvidia]# init 3 
[root@localhost nvidia]# chmod +x nvidia-linux-x86_64-390.25.run 
[root@localhost nvidia]# ./nvidia-linux-x86_64-390.25.run

大概步骤就是这样,如果出现问题,可以直接网上找一找,应该不会太难

安装和启动docker

[root@localhost nvidia]# yum install docker-ce nvidia-docker
[root@localhost nvidia]# systemctl enable docker
[root@localhost nvidia]# systemctl start docker
[root@localhost nvidia]# systemctl enable nvidia-docker
[root@localhost nvidia]# systemctl start nvidia-docker

记得显卡驱动一定要先装好,nvidia-docker才能正常启动

制作docker镜像

[root@localhost nvidia]# yum install cuda-cudart-9-0-9.0.176-1
[root@localhost nvidia]# ln -s cuda-9.0 /usr/local/cuda
[root@localhost nvidia]# nvidia-docker build -t centos-nvidia /root/nvidia/centos-gpu

如果你是用的我修改的dockfile应该不会有什么问题,如果你是用的原版的,可能会在

#copy cuda.repo /etc/yum.repos.d/cuda.repo

出错,但是咱们已经下载cuda 的 repo,并安装了,所以这一步可以不用。

镜像制作结束后,可以用命令 docker images 查看一下:

[root@localhost centos-gpu]# docker images
repository       tag         image id      created       size
centos-nvidia      latest       a02c8e0ad5ca    2 hours aGo     207mb

如果有这一行应该就算是成功了。

生成docker

[root@localhost centos-gpu]# nvidia-docker run --name="centos-gpu2" -ti a02c /bin/bash
[root@34d532e76913 /]# nvidia-smi 
sat feb 10 03:42:20 2018    
+-----------------------------------------------------------------------------+
| nvidia-smi 390.25         driver version: 390.25          |
|-------------------------------+----------------------+----------------------+
| 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 108... off | 00000000:02:00.0 off |         n/a |
| 23%  17c  p8   8w / 250w |   10mib / 11178mib |   0%   default |
+-------------------------------+----------------------+----------------------+
                                        
+-----------------------------------------------------------------------------+
| processes:                            gpu memory |
| gpu    pid  type  process name               usage   |
|=============================================================================|
| no running processes found                         |
+-----------------------------------------------------------------------------+
[root@34d532e76913 /]# exit

如果类似于上面的输出结果,差不多就可以了。

使用docker

[root@localhost centos-gpu]# nvidia-docker ps -a
container id    image        command       created       status           ports        names
34d532e76913    a02c        "/bin/bash"     3 minutes ago    exited (0) 12 seconds ago            centos-gpu2
d16c2db2bf2e    a02c        "/bin/bash"     2 hours ago     exited (0) 19 minutes ago            centos-gpu
370671db8df1    3afd        "/bin/bash"     19 hours ago    exited (137) 3 hours ago            centos-dronemap
[root@localhost centos-gpu]# nvidia-docker start 34d5
34d5
[root@localhost centos-gpu]# nvidia-docker cp /root/nvidia/cuda-repo-rhel7-9.1.85-1.x86_64.rpm 34d532e76913:/root
[root@localhost centos-gpu]# nvidia-docker exec -ti 34d5 /bin/bash
[root@34d532e76913 /]# cd
[root@34d532e76913 ~]# ls
anaconda-ks.cfg cuda-repo-rhel7-9.1.85-1.x86_64.rpm
[root@34d532e76913 ~]# rpm -ivh cuda-repo-rhel7-9.1.85-1.x86_64.rpm 
warning: cuda-repo-rhel7-9.1.85-1.x86_64.rpm: header v3 rsa/sha512 signature, key id 7fa2af80: nokey
preparing...             ################################# [100%]
updating / installing...
  1:cuda-repo-rhel7-9.1.85-1     ################################# [100%]
[root@34d532e76913 ~]# yum install cuda-*9-0*

这里需要注意的是类似于 34d532e76913 这样的编号,是docker自动生成的,运行的时候需要修改一下。

到目前基本上cuda的环境就搭建好了。

tensorflow

把下载的cudnn包用docker cp复制到docker中,解压下来,将里面的lib64路径添加到 /etc/ld.so.conf.d/nvidia.conf 中,运行ldconfig,就ok了。

上面的环境好了以后,再安装python等等软件,这就不说了。之后Tensorflow的一些例子就可以在docker里运行了。当然你得安装gpu版本的,才能发挥显卡的威力。

读到这里,这篇“CentOS7 Nvidia Docker环境如何搭建”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网JavaScript频道。

--结束END--

本文标题: CentOS7 Nvidia Docker环境如何搭建

本文链接: https://www.lsjlt.com/news/96281.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • CentOS7 Nvidia Docker环境如何搭建
    本文小编为大家详细介绍“CentOS7 Nvidia Docker环境如何搭建”,内容详细,步骤清晰,细节处理妥当,希望这篇“CentOS7 Nvidia Docker环境如何搭建”文章能帮助大家解决疑惑,...
    99+
    2022-10-19
  • CentOS7下怎么搭建Docker环境
    这篇文章主要介绍了CentOS7下怎么搭建Docker环境的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CentOS7下怎么搭建Docker环境文章都会有所收获,下面我们一起来看看吧。Docker 是一个开源的...
    99+
    2023-06-28
  • Linux服务器搭建nvidia-docker环境过程详解
    docker相当于一个容器,其可以根据你所需要的运行环境构建相应的运行环境,此时各个环境之间彼此隔离,就不会存在在需要跑一个新的代码的时候破坏原来跑的代码所需要的环境,各个环境之间彼此隔离开,好像一个个容器将其隔离开...
    99+
    2022-06-03
    linux 服务器 搭建 nvidia-docker 环境
  • CentOS7 搭建php环境
    0x01 安装apache 1、安装apache yum install -y httpd 2、修改配置文件 配置ServerName,进入httpd.conf文件: vim /etc/httpd/conf/http...
    99+
    2023-09-01
    apache php centos Powered by 金山文档
  • Centos7环境下YUM如何搭建
    这篇文章将为大家详细讲解有关Centos7环境下YUM如何搭建,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。进入yum源的配置文件ls查看配置文件的东西建立一个目录(随意创建一个目录) ,然后将...
    99+
    2023-06-22
  • docker如何搭建lnmp环境
    要在Docker中搭建LNMP环境(即Linux、Nginx、MySQL和PHP),可以按照以下步骤进行操作:1. 安装Docker...
    99+
    2023-08-23
    docker lnmp
  • docker搭建php环境
    PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法学习了C语言,吸纳Java和Perl多个语言的特色发展出自己的特色语法,并根...
    99+
    2023-08-31
    php 开发语言 服务器
  • Docker-dnmp环境搭建
    目录 dnmp环境搭建1、dnmp目录结构2、.env 配置文件3、docker-compose.yml4、dockerfile5、启动6、测试 遇到的问题1、PHP8 打不开2、MySQ...
    99+
    2023-09-01
    docker php 容器
  • CentOS7环境下使用Docker搭建PHP运行环境的过程详解
    相关文章: CentOS7下使用yum安装Docker Win10环境下使用Docker搭建PHP运行环境 1、创建私有网络 docker network create lnmp...
    99+
    2022-11-12
  • docker搭建nginx+php环境
    一、docker拉取nginx和php镜像 命令如下: docker pull nginx:latestdocker pull php:7.4-fpm 创建本地挂载路径: mkdir -p /dock...
    99+
    2023-09-02
    nginx php docker
  • centos7上如何搭建php运行环境
    这篇文章主要讲解了“centos7上如何搭建php运行环境”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“centos7上如何搭建php运行环境”吧!安装Apache首先,我们需要在CentO...
    99+
    2023-07-05
  • 基于docker如何搭建caffe环境
    小编给大家分享一下基于docker如何搭建caffe环境,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!需求:构建一个独立的容器,里面安装了caffe 的所有依赖,...
    99+
    2023-06-07
  • 如何使用docker搭建kafka环境
    这篇文章主要介绍“如何使用docker搭建kafka环境”,在日常操作中,相信很多人在如何使用docker搭建kafka环境问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用docker搭建kafka环境...
    99+
    2023-06-19
  • 如何在docker中搭建swoole环境
    本篇内容介绍了“如何在docker中搭建swoole环境”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、搭建swoole环境拉取镜像doc...
    99+
    2023-07-02
  • docker如何搭建php开发环境
    要搭建一个基于Docker的PHP开发环境,可以按照以下步骤进行操作:1. 安装Docker:根据你的操作系统,安装适合的Docke...
    99+
    2023-08-23
    docker php
  • CentOS7上快速搭建LAMP环境
    首先确保CentOS7上网络配置正确,可以正常访问互联网。确保已经关闭了iptables。    CentOS7上是firewall,关闭命令:# syst...
    99+
    2022-10-18
  • Centos7下怎么搭建Laravel环境
    这篇文章主要介绍了Centos7下怎么搭建Laravel环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。准备工作更换阿里源服务器安装的centos7系统,先来换下阿里源。$...
    99+
    2023-06-20
  • Centos7中怎么搭建k8s环境
    Centos7中怎么搭建k8s环境,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1. 安装kubeadm、kubelet、kubectl由于官方k8s源在google,国内...
    99+
    2023-06-16
  • CentOS7上如何使用pyenv搭建Django环境
    这篇文章主要介绍CentOS7上如何使用pyenv搭建Django环境,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、pyenv是什么?能做什么?pyenv是一个forked自ruby社区的简单、低调、遵循UNIX...
    99+
    2023-06-25
  • docker怎么搭建lnmp环境
    要搭建一个LNMP环境(即 Linux + Nginx + MySQL + PHP),可以使用Docker来实现。 以下是基本的步骤...
    99+
    2023-10-23
    docker lnmp
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作