Y2Z Main Page
Attachments
History
Blame
View Source
Changelog
Documentation
Toggle dark mode
Login
Home
A - Z
Page Index
Docker
Hardware
GPU
iLO
Home
Iac
Ansible
K8S
Minikube
Linux
Distro
Debian
Ubuntu
Linux Directory Structure
Misc
Fonts
System
Bash
Fail2ban
LVM
Ssh
Systemd
Monitoring
Prometheus
Zabbix
Self-Hosted
Jellyfin
Jitsi-Meet
Komga
Navidrome
Nginx
Rustdesk
Uptime-Kuma
Storage
Minio
Virtualization
Proxmox
WSL
Windows
Software
Chocolatey
An Otter Wiki
Docker
f79456
Commit
f79456
2025-05-15 08:51:54
Mayekkuzu
: Nvidia in Docker added
docker.md
..
@@ 41,3 41,54 @@
```
После чего нужно перелогиниться в систему.
+
## Проброс видеокарты Nvidia в контейнер Ubuntu/Debian
+
+
Необходимо добавить репозиторий. Nvidia советует использовать такой метод.
+
```bash
+
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/stable/deb/nvidia-container-toolkit.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
+
```
+
+
Далее включаем экспериментальные пакеты и установим
+
```bash
+
sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
+
sudo apt-get update
+
sudo apt-get install -y nvidia-container-toolkit
+
```
+
+
Генерируем конфигурационный фаил
+
```bash
+
sudo nvidia-ctk cdi generate --output=/etc/cdi/nvidia.yaml
+
```
+
+
Убедимся что видеокарта получила идентификатор
+
```bash
+
root@exclusion-watch:~# nvidia-ctk cdi list
+
INFO[0000] Found 3 CDI devices
+
nvidia.com/gpu=0
+
nvidia.com/gpu=GPU-ec7e5c60-b699-86c7-39da-e61db1767de2
+
nvidia.com/gpu=all
+
```
+
+
Ставим рантайм по умолчанию и рестартим сервис докер
+
```bash
+
sudo nvidia-ctk runtime configure --runtime=docker --set-as-default
+
sudo systemctl restart docker
+
```
+
+
Теперь если необходимо пробросить карточку то ознакомьтесь с примером docker-compose
+
```yaml
+
...
+
transcoder-nvidia:
+
<<: *transcoder-base
+
deploy:
+
resources:
+
reservations:
+
devices:
+
- capabilities: [gpu]
+
driver: nvidia
+
device_ids:
+
- nvidia.com/gpu=0
+
```
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9