Skip to content Skip to footer

Jak naprawić błąd „could not select device driver nvidia” w local-ai-packaged na Ubuntu Desktop

Wprowadzenie

Cześć! Próbujesz uruchomić local-ai-packaged na Ubuntu Desktop (np. na laptopie z AMD Ryzen 9 5900HS i NVIDIA RTX 3060) z profilem gpu-nvidia i środowiskiem public, ale napotykasz błąd: Error response from daemon: could not select device driver "nvidia" with capabilities: [[gpu]]? Ten idiotoodporny poradnik pokaże Ci, jak rozwiązać ten problem i uruchomić usługi AI, takie jak Flowise czy Supabase, na Twoim serwerze (np. 192.168.76.171). Artykuł jest po polsku, zawiera gotowe komendy i opisy zrzutów ekranu, idealne dla klientów agencja-ai.com!

Co oznacza ten błąd?

Błąd could not select device driver "nvidia" with capabilities: [[gpu]] oznacza, że Docker nie może komunikować się z Twoim GPU NVIDIA, ponieważ sterowniki NVIDIA lub NVIDIA Container Toolkit nie są poprawnie zainstalowane lub skonfigurowane. Problem może wynikać z:

  • Braku sterowników NVIDIA.
  • Braku NVIDIA Container Toolkit.
  • Niezgodności wersji sterowników z CUDA.
  • Włączonego Secure Boot, który blokuje moduły jądra.
  • Nieprawidłowej konfiguracji Dockera.

Zalecana konfiguracja:

  • System: Ubuntu Desktop 22.04 LTS lub 24.04.
  • GPU: NVIDIA RTX 3060.
  • Sterowniki NVIDIA: Wersja 535 lub nowsza.
  • CUDA: Wersja 12.2 lub zgodna.
  • Docker: Najnowsza wersja z NVIDIA Container Toolkit.

Uwaga: Jeśli używasz laptopa jako serwera AI (192.168.76.171), sprawdź nasz poradnik o widoczności usług.

Wymagania wstępne

  • Laptop z GPU NVIDIA (np. RTX 3060, AMD Ryzen 9 5900HS).
  • Zainstalowany Ubuntu Desktop 22.04 LTS lub 24.04.
  • Połączenie internetowe (Ethernet lub Wi-Fi).
  • Kopia zapasowa danych (na wszelki wypadek).
  • Podstawowa znajomość terminala.

Krok po kroku: Rozwiązanie błędu „could not select device driver nvidia”

1. Sprawdzenie stanu GPU i sterowników NVIDIA

Zweryfikuj, czy GPU i sterowniki są poprawnie wykrywane.

  1. Otwórz terminal (Ctrl+Alt+T) i wpisz:
  2. nvidia-smi

    Powinieneś zobaczyć tabelę z informacjami o GPU (np. NVIDIA RTX 3060, wersja sterownika: 535.146.02, CUDA: 12.2). Jeśli widzisz błąd NVIDIA-SMI has failed, przejdź do kroku 2.

    [](https://askubuntu.com/questions/1153023/error-nvidia-driver-is-not-loaded)
  3. Sprawdź, czy GPU jest widoczne:
  4. lspci | grep -i nvidia

    Powinieneś zobaczyć linię z NVIDIA Corporation, np. 01:00.0 VGA compatible controller: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile].

    [](https://github.com/mudler/LocalAI/discussions/1577)

    Zrzut ekranu: Terminal z wynikiem nvidia-smi pokazującym GPU i sterowniki.

2. Instalacja sterowników NVIDIA

Jeśli nvidia-smi nie działa, zainstaluj sterowniki NVIDIA.

  1. Zaktualizuj listę pakietów:
  2. sudo apt update
  3. Sprawdź dostępne sterowniki NVIDIA:
  4. ubuntu-drivers devices

    Znajdź sterownik oznaczony jako recommended, np. nvidia-driver-535.

    [](https://www.linuxbabe.com/ubuntu/install-nvidia-driver-ubuntu)
  5. Zainstaluj zalecany sterownik:
  6. sudo apt install -y nvidia-driver-535 nvidia-dkms-535
  7. Zrestartuj system:
  8. sudo reboot
  9. Po restarcie zweryfikuj sterowniki:
  10. nvidia-smi

    Powinieneś zobaczyć GPU i wersję sterownika (np. 535.146.02).

    Zrzut ekranu: Terminal z wynikiem ubuntu-drivers devices i nvidia-smi.

3. Wyłączenie Secure Boot (jeśli konieczne)

Secure Boot może blokować moduły NVIDIA, powodując błąd.

[](https://askubuntu.com/questions/1153023/error-nvidia-driver-is-not-loaded)
  1. Uruchom laptop i wejdź do BIOS/UEFI (zwykle F2, Del lub F12).
  2. Znajdź opcję Secure Boot w sekcji Boot lub Security.
  3. Ustaw Secure Boot na Disabled.
  4. Zapisz zmiany (zwykle F10) i zrestartuj.
  5. Zrzut ekranu: BIOS z opcją Secure Boot ustawioną na Disabled.

  6. Zweryfikuj sterowniki ponownie:
  7. nvidia-smi

4. Instalacja CUDA Toolkit

local-ai-packaged wymaga CUDA dla wsparcia GPU. Zainstaluj CUDA Toolkit zgodny ze sterownikami.

  1. Pobierz CUDA Toolkit 12.2 (zalecane dla sterownika 535):
  2. wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run
    sudo sh cuda_12.2.2_535.104.05_linux.run
  3. Postępuj zgodnie z instalatorem:
    • Zaakceptuj EULA (accept).
    • Odznacz Driver (jeśli sterowniki są już zainstalowane).
    • Zainstaluj resztę komponentów (CUDA Toolkit, Samples).
  4. Skonfiguruj zmienne środowiskowe:
  5. echo 'export PATH=/usr/local/cuda-12.2/bin:$PATH' >> ~/.bashrc
    echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
    source ~/.bashrc
  6. Zweryfikuj instalację CUDA:
  7. nvcc --version

    Powinieneś zobaczyć wersję, np. Cuda compilation tools, release 12.2.

    [](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/)

    Zrzut ekranu: Terminal z wynikiem nvcc --version.

5. Instalacja NVIDIA Container Toolkit

Docker wymaga NVIDIA Container Toolkit, aby obsługiwać GPU.

  1. Dodaj repozytorium NVIDIA Container Toolkit:
  2. 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://#' | \
      sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
  3. Zainstaluj Toolkit:
  4. sudo apt update
    sudo apt install -y nvidia-container-toolkit
  5. Skonfiguruj Docker dla NVIDIA:
  6. sudo nvidia-ctk runtime configure --runtime=docker
    sudo systemctl restart docker
  7. Zweryfikuj konfigurację:
  8. docker run --rm --gpus all nvidia/cuda:12.2.2-base-ubuntu22.04 nvidia-smi

    Powinieneś zobaczyć tabelę nvidia-smi z GPU. Jeśli widzisz błąd, wróć do kroku 2.

    [](https://askubuntu.com/questions/1516765/docker-error-response-from-daemon-could-not-select-device-driver-nvidia-with)

    Zrzut ekranu: Terminal z wynikiem testowego kontenera nvidia-smi.

6. Ponowne uruchomienie local-ai-packaged

Po skonfigurowaniu sterowników, CUDA i NVIDIA Container Toolkit, uruchom ponownie local-ai-packaged.

  1. Przejdź do katalogu projektu:
  2. cd ~/local-ai-packaged
  3. Edytuj plik .env (jeśli nie istnieje, utwórz go):
  4. nano .env

    Dodaj (dostosuj do swoich potrzeb):

    ############
    # Flowise Configuration
    ############
    FLOWISE_USERNAME=username
    FLOWISE_PASSWORD=password
    FLOWISE_HOSTNAME=flowise.agencja-ai.com
    ############
    # Supabase Configuration
    ############
    SUPABASE_URL=http://192.168.76.x:3000
    SUPABASE_ANON_KEY=your_anon_key
  5. Uruchom skrypt z profilem GPU:
  6. python3 start_services.py --profile gpu-nvidia --environment public
  7. Zweryfikuj działanie usług:
  8. docker ps

    Powinieneś zobaczyć uruchomione kontenery, np. localai_flowise, localai_supabase.

  9. Przetestuj dostęp do Flowise:
  10. curl http://192.168.76.x:3001

    Zrzut ekranu: Przeglądarka z otwartą stroną https://flowise.agencja-ai.com.

7. Weryfikacja partycji dla VM (jeśli używane)

Jeśli używasz partycji dla maszyn wirtualnych (zgodnie z poprzednim poradnikiem), upewnij się, że jest poprawnie zamontowana.

  1. Sprawdź partycje:
  2. lsblk

    Zweryfikuj, czy /var/lib/libvirt jest zamontowane (np. 880 GB).

  3. Sprawdź uprawnienia:
  4. ls -ld /var/lib/libvirt

    Powinieneś zobaczyć drwxrwx--- libvirt-qemu:libvirt-qemu.

    Zrzut ekranu: Terminal z wynikiem lsblk i ls -ld /var/lib/libvirt.

Najlepsze praktyki

  • Aktualizacje: Regularnie aktualizuj sterowniki NVIDIA i CUDA:
  • sudo apt update
    sudo apt upgrade -y nvidia-driver-535 nvidia-dkms-535
  • Firewall: Otwórz porty dla usług AI:
  • sudo ufw allow 80
    sudo ufw allow 443
    sudo ufw allow 3000
    sudo ufw allow 3001
  • Monitorowanie GPU: Używaj nvidia-smi do monitorowania użycia GPU:
  • watch -n 1 nvidia-smi
  • Kopia zapasowa: Twórz kopie zapasowe konfiguracji local-ai-packaged:
  • cp -r ~/local-ai-packaged ~/local-ai-packaged-backup

Rozwiązywanie problemów

  • Błąd persists: Jeśli błąd nadal występuje, spróbuj użyć opcji --privileged i -v /dev:/dev dla Dockera:
  • docker run --rm -ti --gpus all --privileged -v /dev:/dev nvidia/cuda:12.2.2-base-ubuntu22.04 nvidia-smi

    Jeśli działa, edytuj docker-compose.yml w local-ai-packaged, dodając:

    services:
      flowise:
        ...
        privileged: true
        volumes:
          - /dev:/dev
  • Problemy z siecią: Sprawdź konfigurację sieci bridge (br0):
  • ip addr show br0

    Zobacz nasz poradnik o KVM.

  • Brak CUDA w VM: Upewnij się, że GPU jest przekazywane do VM przez GPU passthrough. Zobacz nasz poradnik o GPU passthrough.
  • Kontakt: Jeśli problem persists, napisz do nas na agencja-ai.com/kontakt.

Zwiększanie sprzedaży instrukcji

  • Polski język: Proste instrukcje po polsku przyciągają polskich użytkowników.
  • Demo: Pokaż działające Flowise na https://flowise.agencja-ai.com.
  • PDF: Udostępnij ten artykuł jako PDF na agencja-ai.com.

Podsumowanie

Rozwiązałeś błąd could not select device driver "nvidia" with capabilities: [[gpu]] w local-ai-packaged na Ubuntu Desktop, instalując sterowniki NVIDIA, CUDA Toolkit i NVIDIA Container Toolkit. Twoje usługi AI, takie jak Flowise, działają teraz na serwerze 192.168.76.171, gotowe do użycia z GPU NVIDIA RTX 3060. Ten poradnik zwiększy atrakcyjność Twoich instrukcji na agencja-ai.com. Potrzebujesz więcej poradników, np. o optymalizacji GPU dla Flowise? Napisz do nas! 😄

Źródła: NVIDIA CUDA, NVIDIA Container Toolkit, local-ai-packaged

Leave a comment

0.0/5