Google setzt sich dafür ein, die Rassengerechtigkeit für schwarze Gemeinschaften zu fördern. Siehe wie.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Docker

Docker verwendet Container , um virtuelle Umgebungen zu erstellen, die eine TensorFlow-Installation vom Rest des Systems isolieren. TensorFlow-Programme werden in dieser virtuellen Umgebung ausgeführt, die Ressourcen für den Host-Computer freigeben können (Zugriff auf Verzeichnisse, Verwendung der GPU, Verbindung zum Internet usw.). Die TensorFlow Docker-Images werden für jede Version getestet.

Docker ist der einfachste Weg, um die TensorFlow- GPU-Unterstützung unter Linux zu aktivieren, da auf dem Host- Computer nur der NVIDIA® GPU-Treiber erforderlich ist (das NVIDIA® CUDA® Toolkit muss nicht installiert werden).

TensorFlow Docker-Anforderungen

  1. Installieren Sie Docker auf Ihrem lokalen Host- Computer.
  2. Installieren Sie für die GPU-Unterstützung unter Linux die NVIDIA Docker-Unterstützung .
    • Notieren Sie sich Ihre Docker-Version mit docker -v . Versionen älter als 19.03 erfordern nvidia-docker2 und die --runtime=nvidia Flagge. In Versionen einschließlich und nach 19.03 verwenden Sie das Paket nvidia-container-toolkit und das --gpus all . Beide Optionen sind auf der oben verlinkten Seite dokumentiert.

Laden Sie ein TensorFlow Docker-Image herunter

Die offiziellen TensorFlow Docker-Images befinden sich im Tensorflow / Tensorflow Docker Hub-Repository. Image-Releases werden im folgenden Format gekennzeichnet:

Etikett Beschreibung
latest Die neueste Version des TensorFlow-CPU-Binärbilds. Standard.
nightly Nächtliche Builds des TensorFlow-Bildes. (instabil)
version Geben Sie die Version des TensorFlow-Binärbilds an, zum Beispiel: 2.1.0
devel Nächtliche Builds einer TensorFlow- master Entwicklungsumgebung. Enthält TensorFlow-Quellcode.
custom-op Spezielles experimentelles Bild für die Entwicklung von TF Custom Ops.

:: Weitere Infos hier: https://github.com/tensorflow/custom-op :

Jedes Basis- Tag verfügt über Varianten, die Funktionen hinzufügen oder ändern:

Tag-Varianten Beschreibung
tag -gpu Die angegebene Tag- Version mit GPU-Unterstützung. ( Siehe unten )
tag -jupyter Die angegebene Tag- Version mit Jupyter (einschließlich TensorFlow-Lernhefte)

Sie können mehrere Varianten gleichzeitig verwenden. Mit den folgenden Downloads können Sie beispielsweise TensorFlow-Release-Images auf Ihren Computer herunterladen:

docker pull tensorflow/tensorflow                     # latest stable release
docker pull tensorflow/tensorflow:devel-gpu           # nightly dev release w/ GPU support
docker pull tensorflow/tensorflow:latest-gpu-jupyter  # latest release w/ GPU support and Jupyter

Starten Sie einen TensorFlow Docker-Container

Verwenden Sie das folgende Befehlsformular, um einen von TensorFlow konfigurierten Container zu starten:

docker run [-it] [--rm] [-p hostPort : containerPort ] tensorflow/tensorflow[: tag ] [ command ]

Weitere Informationen finden Sie in der Docker-Ausführungsreferenz .

Beispiele für Nur-CPU-Images

Lassen Sie uns die TensorFlow-Installation anhand des latest getaggten Images überprüfen. Docker lädt beim ersten Start ein neues TensorFlow-Image herunter:

docker run -it --rm tensorflow/tensorflow \
   python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

Lassen Sie uns einige weitere TensorFlow Docker-Rezepte demonstrieren. Starten Sie eine bash Shell-Sitzung in einem von TensorFlow konfigurierten Container:

docker run -it tensorflow/tensorflow bash

Innerhalb des Containers können Sie eine python Sitzung starten und TensorFlow importieren.

Um ein TensorFlow Programm läuft in einen Behälter entwickelt auf dem Hostcomputer, montieren Sie das Host - Verzeichnis und das Arbeitsverzeichnis des Containers ändern ( -v hostDir:containerDir -w workDir ):

docker run -it --rm -v $PWD:/tmp -w /tmp tensorflow/tensorflow python ./script.py

Berechtigungsprobleme können auftreten, wenn in einem Container erstellte Dateien für den Host verfügbar gemacht werden. Normalerweise ist es am besten, Dateien auf dem Hostsystem zu bearbeiten.

Starten Sie einen Jupyter Notebook- Server mit TensorFlows nächtlichem Build:

docker run -it -p 8888:8888 tensorflow/tensorflow:nightly-jupyter

Folgen Sie den Anweisungen und öffnen Sie die URL in Ihrem Host-Webbrowser: http://127.0.0.1:8888/?token=...

GPU-Unterstützung

Docker ist der einfachste Weg TensorFlow auf einer GPU , da die Host - Maschine das erfordert nur laufen NVIDIA® Treiber (der NVIDIA® CUDA® Toolkit ist nicht erforderlich).

Installieren Sie das Nvidia Container Toolkit , um Docker NVIDIA® GPU-Unterstützung hinzuzufügen. nvidia-container-runtime ist nur für Linux verfügbar. Weitere Informationen finden Sie in den häufig gestellten nvidia-container-runtime Unterstützung der nvidia-container-runtime Plattform .

Überprüfen Sie, ob eine GPU verfügbar ist:

lspci | grep -i nvidia

Überprüfen Sie Ihre nvidia-docker Installation:

docker run --gpus all --rm nvidia/cuda nvidia-smi

Beispiele für GPU-fähige Images

Laden Sie ein GPU-fähiges TensorFlow-Image herunter und führen Sie es aus (dies kann einige Minuten dauern):

docker run --gpus all -it --rm tensorflow/tensorflow:latest-gpu \
   python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

Das Einrichten des GPU-fähigen Images kann eine Weile dauern. Wenn Sie GPU-basierte Skripts wiederholt ausführen, können Sie docker exec , um einen Container wiederzuverwenden.

Verwenden Sie das neueste TensorFlow-GPU-Image, um eine bash Shell-Sitzung im Container zu starten:

docker run --gpus all -it tensorflow/tensorflow:latest-gpu bash