ToB企服应用市场:ToB评测及商务社交产业平台

标题: 在服务器摆设Nvidia-Docker全流程,附Dockerfile [打印本页]

作者: 立山    时间: 2024-8-10 10:00
标题: 在服务器摆设Nvidia-Docker全流程,附Dockerfile
在服务器摆设Nvidia-Docker全流程,附Dockerfile

在服务器使用docker可以使管理员能够对服务器用户进行更便捷的管理,相比于基于anaconda环境的管理,用户之间不共享工作空间,管理员只对用户暴露服务器端口和数据集,用户可以自界说参与密码,安全性更高。Nvidia-Docker已经更新至Nvidia-Container-Toolkit,使用更加轻便。本文分别给出了当前版本基于镜像与Dockerfile在服务器摆设Nvidia-Docker的全部流程,推荐使用dockerfile。

主机依赖安装

Docker安装

扫除现有的docker相干包


设置apt的docker堆栈

  1. # Add Docker's official GPG key:
  2. sudo apt-get update
  3. sudo apt-get install ca-certificates curl
  4. sudo install -m 0755 -d /etc/apt/keyrings
  5. sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
  6. sudo chmod a+r /etc/apt/keyrings/docker.asc
  7. # Add the repository to Apt sources:
  8. echo \
  9.   "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  10.   $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  11.   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  12. sudo apt-get update
复制代码
安装最新版docker


验证安装


Nvidia-docker安装

设置apt堆栈

  1. curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  2.   && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
  3.     sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
  4.     sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
  5. sudo apt-get update
复制代码
安装Nvidia Container Toolkit


配置Docker


重启Docker


制作通用的nvidia-docker 镜像

拉取镜像


检察镜像id


删除镜像


创建nvidia-docker 容器


检察container id


进入container


Container 操作


配置container的ssh服务


SSH配置

修改ssh文件信息,允许root用户使用ssh登录。

重启ssh


设置毗连密码


注意:

出现现象在exec时添加进容器的环境变量在通过ssh启动时找不到,缘故原由是exec时自动加了一些环境变量。解决方案就是改.bashrc,把丢失的环境变量加上。

安装Anaconda


打包镜像


新用户使用镜像制作自己的容器

镜像名称ubuntu20.04_cuda_11.4_cudnn8_anaconda

Dockerfile

  1. # Basic Image
  2. FROM nvidia/cuda:11.4.3-cudnn8-devel-ubuntu20.04
  3. # Description
  4. LABEL name="ubuntu20.04 cuda11.4 cudnn8"
  5. LABEL version="1.0"
  6. LABEL author="LiSH"
  7. LABEL mail="li.shanghong.0222@gmail.com"
  8. # Update
  9. RUN apt-get update \
  10.         && apt-get install -y vim \
  11.         && apt-get install htop
  12.        
  13. # Config SSH
  14. RUN DEBIAN_FRONTEND=noninteractive apt-get install -y openssh-server \
  15.     && sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config \
  16.     && sed -i '$a service ssh restart' ~/.bashrc \
  17.     && echo 'root:0222'|chpasswd
  18. # Install Anaconda
  19. RUN wget https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh \
  20.     && bash Anaconda3-2024.02-1-Linux-x86_64.sh -b -p /opt/conda \
  21.     && sed -i '$a export PATH="/opt/conda/bin:$PATH"' ~/.bashrc \
  22.     && sed -i '$a source /opt/conda/bin/activate' ~/.bashrc
  23. # Config Cudnn
  24. RUN sed -i '$a export PATH="/usr/local/cuda/bin:$PATH"' ~/.bashrc \
  25.     && sed -i '$a export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"' ~/.bashrc \
  26.     && sed -i '$a cd /' ~/.bashrc
复制代码
注意


使用Dockerfile构建镜像


从Dockerfile构建的镜像创建容器



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4