前言
需要 nvdia driver
安裝好,請參考 Ubuntu Nvidia driver驅動安裝及解除安裝
docker 安裝
配置 apt
阿里雲的映象源
sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
配置
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
安裝 docker
和 nvidia-docker2
sudo apt-get update
apt install docker-ce docker-ce-cli
sudo apt-get install -y nvidia-docker2
如果你只用docker,這一步不用操作。
但如果你是 k8s
環境 需要配置 cgroupdriver
改使用 systemd
# Set up cgroupdriver
cat > /etc/docker/daemon.json << EOF
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
設定 docker
開機自啟,重啟載入 docker
配置
systemctl enable docker
systemctl restart docker
測試docker是否佔用gpu
在 docker
中使用 gpu
,必須在建立容器時開啟 --gpus
引數,並保證 docker
的版本在 19.03
以上。
執行一個基本的CUDA容器來測試是否配置完成
sudo docker run --rm --runtime=nvidia --gpus all nvidia/cuda:12.0.1-runtime-ubuntu22.04 nvidia-smi
輸出如下所示,就代表你的容器以及支援GPU:
Thu Apr 25 08:53:22 2024
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.154.05 Driver Version: 535.154.05 CUDA Version: 12.2 |
|-----------------------------------------+----------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+======================+======================|
| 0 Tesla T4 Off | 00000000:00:05.0 Off | 0 |
| N/A 39C P0 25W / 70W | 105MiB / 15360MiB | 0% Default |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=======================================================================================|
| 0 N/A N/A 3812267 C /usr/local/bin/python 100MiB |
+---------------------------------------------------------------------------------------+