原创学习

ESXI8.0下直通NVIDIA Tesla P4显卡给Ubuntu22.04系统中Docker容器里的Jellyfin使用

本文阅读 2 分钟
首页 学习 正文

ESXI8.0直通特斯拉P4

直接点直通就可以了
image

创建虚拟机

添加直通显卡
关闭UEFI 安全引导
image
image

安装安装操作系统

Ubuntu22.04
过程:略

通过SMB挂载NAS目录

安装cifs-utils

sudo apt-get install cifs-utils

编辑文件

vi /etc/fstab

增加以下内容,共享路径 挂载点 文件类型 挂载参数(共享的认证账号和认证账号的密码等参数)

【SMB目录】  【本地挂载目录】 cifs defaults,username=【用户名】,password=【密码】 0 0
#例子:
#//10.1.0.10/Jellyfin  /jellyfin/media/ cifs defaults,username=test,password=ASD123asd 0 0

挂载

mount -a

查看挂载

df -Th

Tesla P4安装驱动

屏蔽系统内置显卡驱动nouveau

su
touch /etc/modprobe.d/blacklist-nvidia-nouveau.conf
cat >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf << EOF
blacklist nouveau
options nouveau modeset=0
EOF
touch /etc/modprobe.d/nvidia.conf
cat >> /etc/modprobe.d/nvidia.conf << EOF
options nvidia NVreg_OpenRmEnableUnsupportedGpus=1
EOF
sudo update-initramfs -u

检查nouveau

lsmod |grep nouveau

安装显卡驱动程序

访问https://www.nvidia.cn/Download/index.aspx?lang=cn下载

#补全文件信息
chmod +x /NVIDIA-Linux-x86_64-525.xxx.xx.run
#补全文件信息
apt install build-essential pkg-config libglvnd-dev ./NVIDIA-Linux-x86_64-525.xxx.xx.run  -no-x-check -no-nouveau-check -no-opengl-files -m=kernel-open

验证

nvidia-smi

image

安装CUDA

英伟达官方命令[https://developer.nvidia.com/cuda-toolkit]

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda

执行完成后设置变量环境,在~/.bashrc文件末尾添加

export PATH=/usr/local/cuda-12.2/bin${PATH:+:${PATH}}

确认nvidia-persistenced守护进程是否开启

systemctl enable nvidia-persistenced
systemctl start nvidia-persistenced
systemctl status nvidia-persistenced
reboot
#这里一定要重启!
#这里一定要重启!
#这里一定要重启!

为了服务器软件的版本稳定,关掉 unattended-upgrade 自动更新!

sudo dpkg-reconfigure unattended-upgrades

输入no

安装dcoker

过程:略

安装docker-compose

过程:略

显卡docker直通

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
      && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
      && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
            sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
            sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
apt update
apt-get install -y nvidia-docker2 nvidia-container-runtime
systemctl restart docker
#这里一定要重启Docker!
#这里一定要重启Docker!
#这里一定要重启Docker!

编辑docker-compose.yml

version: "3.7"
services:
  jellyfin:
    container_name: jellyfin
    image: "nyanmisaka/jellyfin:230801-amd64"
    environment:
        - PUID=0
        - GUID=0
        - NVIDIA_DRIVER_CAPABILITIES=all
        - NVIDIA_VISIBLE_DEVICES=all
    ports:
        - "8096:8096"
        - "8920:8920"
    extra_hosts:
        - "api.themoviedb.org:54.192.18.90"
        - "image.themoviedb.org:104.16.61.155"
    volumes: 
        - "/jellyfin/config:/config"
        - "/jellyfin/media:/media"
    restart: always
    user: root
    devices: 
        - "/dev/dri:/dev/dri"
    deploy: 
        resources: 
            reservations: 
                devices: 
                  - capabilities: ["gpu"]

启动jellyfin

进入目录执行启动docker-compose up
后台运行docker-compose up -d
结束运行docker-compose down

转码测试

image
image

完结散花

image

原创文章,作者:zerokong,如若转载,请注明出处:

https://blog.zerokong.com/%E5%AD%A6%E4%B9%A0/24.html

谈谈运营商的FTTR设备和本人使用深圳电信宽带
« 上一篇 10-06
[3D打印]垃圾桶20240222
下一篇 » 02-22