====== Nastavení GPU v Dockeru (GPU Passthrough) ====== Standardní Docker kontejnery nemají přímý přístup k hardwaru hostitele. Pro běh LLM/SLM modelů nebo trénování neuronových sítí je nutné zprovoznit tzv. **NVIDIA Container Toolkit** (dříve NVIDIA Docker). ===== 1. Předpoklady ===== Před konfigurací Dockeru se ujistěte, že: * Máte nainstalovány [[it:aktualizace_ovladacu_pro_ai|aktuální ovladače GPU]] na hostitelském stroji. * Máte nainstalovaný **Docker Engine** (v26.x nebo novější). * Na Linuxu máte nainstalovaný balíček ''curl'' a ''gpg''. ===== 2. Instalace NVIDIA Container Toolkit (Linux) ===== Toto je nejdůležitější krok, který přidá do Dockeru rozhraní ''nvidia'' runtime. ==== Přidání repozitáře ==== 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 ==== Instalace balíčku ==== sudo apt-get update sudo apt-get install -y nvidia-container-toolkit ==== Konfigurace Dockeru ==== Musíte Dockeru říci, aby nový runtime používal: sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker ===== 3. Nastavení na Windows (WSL2) ===== V roce 2026 je situace na Windows jednodušší. Pokud používáte **Docker Desktop** a máte funkční **WSL2** (Windows Subsystem for Linux), podpora GPU je automaticky detekována. * Stačí mít v nastavení Docker Desktop zaškrtnuto: **"Use the WSL 2 based engine"**. * Není třeba instalovat Container Toolkit uvnitř WSL distribuí ručně, Docker Desktop to řeší za vás. ===== 4. Ověření funkčnosti ===== Zkuste spustit testovací kontejner, který vypíše stav GPU: docker run --rm --gpus all nvidia/cuda:12.4.0-base-ubuntu22.04 nvidia-smi Pokud uvidíte tabulku se stavem grafické paměti, propojení funguje správně. ===== 5. Použití v Docker Compose ===== Pro nasazení komplexnějších aplikací (např. [[it:hostovani_modelu|Open WebUI]]) použijte v souboru ''docker-compose.yml'' sekci ''deploy'': services: ai-server: image: ollama/ollama deploy: resources: reservations: devices: - driver: nvidia count: all capabilities: [gpu] ===== Časté chyby (Troubleshooting) ===== ^ Chyba ^ Řešení ^ | **"Unknown runtime: nvidia"** | Nebyl spuštěn příkaz ''nvidia-ctk runtime configure''. | | **"Could not select device with capabilities: [gpu]"** | Ovladače na hostiteli jsou zastaralé nebo nekompatibilní s verzí Toolkitu. | | **Pomalý běh** | Zkontrolujte, zda kontejner skutečně vidí GPU (použijte ''nvidia-smi'' uvnitř kontejneru). | --- **Související dokumentace:** * [[it:aktualizace_ovladacu_pro_ai|Ovladače a CUDA]] * [[it:ollama_docker|Návod na Ollama v Dockeru]] * [[it:kubernetes_gpu|GPU v Kubernetes (K8s)]] --- **Správce:** @DevOps_Team **Poslední aktualizace:** 04. 01. 2026