Zum Inhalt springen

Docker Schnellstartanleitung fĂŒr Ultralytics

Ultralytics Docker-Paket Visuell

Dieser Leitfaden dient als umfassende EinfĂŒhrung in die Einrichtung einer Docker-Umgebung fĂŒr deine Ultralytics Projekte. Docker ist eine Plattform fĂŒr die Entwicklung, den Versand und die AusfĂŒhrung von Anwendungen in Containern. Sie ist besonders nĂŒtzlich, um sicherzustellen, dass die Software immer gleich lĂ€uft, unabhĂ€ngig davon, wo sie eingesetzt wird. Weitere Informationen findest du im Ultralytics Docker Repository auf Docker Hub.

Docker Pulls

Was du lernen wirst

  • Docker mit NVIDIA-UnterstĂŒtzung einrichten
  • Installation von Ultralytics Docker-Images
  • Ultralytics in einem Docker-Container ausfĂŒhren
  • Lokale Verzeichnisse in den Container einbinden

Voraussetzungen

  • Stelle sicher, dass Docker auf deinem System installiert ist. Falls nicht, kannst du es von der Website von Docker herunterladen und installieren.
  • Vergewissere dich, dass dein System einen NVIDIA-Grafikprozessor hat und die NVIDIA-Treiber installiert sind.

Docker mit NVIDIA-UnterstĂŒtzung einrichten

ÜberprĂŒfe zunĂ€chst, ob die NVIDIA-Treiber richtig installiert sind, indem du sie ausfĂŒhrst:

nvidia-smi

Installation der NVIDIA Docker Runtime

Jetzt installieren wir die NVIDIA Docker-Laufzeit, um die GPU-UnterstĂŒtzung in Docker-Containern zu aktivieren:

# Add NVIDIA package repositories
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
distribution=$(lsb_release -cs)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

# Install NVIDIA Docker runtime
sudo apt-get update
sudo apt-get install -y nvidia-docker2

# Restart Docker service to apply changes
sudo systemctl restart docker

NVIDIA Runtime mit Docker verifizieren

Lauf docker info | grep -i runtime um sicherzustellen, dass nvidia erscheint in der Liste der Laufzeiten:

docker info | grep -i runtime

Installation von Ultralytics Docker Images

Ultralytics bietet mehrere Docker-Images, die fĂŒr verschiedene Plattformen und AnwendungsfĂ€lle optimiert sind:

  • Dockerfile: GPU-Image, ideal fĂŒr das Training.
  • Dockerfile-arm64: FĂŒr die ARM64-Architektur, geeignet fĂŒr GerĂ€te wie den Raspberry Pi.
  • Dockerfile-cpu: Eine reine CPU-Version fĂŒr Inferenz- und Nicht-GPU-Umgebungen.
  • Dockerfile-jetson: Optimiert fĂŒr NVIDIA Jetson GerĂ€te.
  • Dockerfile-python: Minimale Python Umgebung fĂŒr leichtgewichtige Anwendungen.
  • Dockerfile-conda: EnthĂ€lt Miniconda3 und das Ultralytics Paket, das ĂŒber Conda installiert wird.

So ziehst du das neueste Bild:

# Set image name as a variable
t=ultralytics/ultralytics:latest

# Pull the latest Ultralytics image from Docker Hub
sudo docker pull $t

Ultralytics in Docker Container ausfĂŒhren

Hier erfĂ€hrst du, wie du den Ultralytics Docker-Container ausfĂŒhrst:

# Run with all GPUs
sudo docker run -it --ipc=host --gpus all $t

# Run specifying which GPUs to use
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t

Die -it Flag weist ein Pseudo-TTY zu und hĂ€lt stdin offen, damit du mit dem Container interagieren kannst. Die --ipc=host Flag ermöglicht die gemeinsame Nutzung des IPC-Namensraums des Hosts, der fĂŒr die gemeinsame Nutzung von Speicher durch Prozesse unerlĂ€sslich ist. Die --gpus Flag ermöglicht dem Container den Zugriff auf die GPUs des Hosts.

Hinweis zur ZugÀnglichkeit von Dateien

Um mit Dateien auf deinem lokalen Rechner innerhalb des Containers zu arbeiten, kannst du Docker-Volumes verwenden:

# Mount a local directory into the container
sudo docker run -it --ipc=host --gpus all -v /path/on/host:/path/in/container $t

Ersetze /path/on/host mit dem Verzeichnispfad auf deinem lokalen Rechner und /path/in/container mit dem gewĂŒnschten Pfad innerhalb des Docker-Containers.


Herzlichen GlĂŒckwunsch! Du bist nun in der Lage, Ultralytics mit Docker zu verwenden und die Vorteile seiner leistungsstarken Funktionen zu nutzen. Alternative Installationsmethoden findest du in der Schnellstart-DokumentationUltralytics .



Erstellt am 2023-11-12, Aktualisiert am 2023-11-16
Autoren: glenn-jocher (2)

Kommentare