2016-06-03 17 views
3

Ich versuche, Build Docker-Task zum Erstellen eines Docker-Image zu erstellen. Ich habe einen Docker-Host eingerichtet, ich verwende defautl Docker Hub als Registrierung und meine gesamte Umgebung ist auf Azure.Visual Studio-Team-Dienst schlägt fehl Task Docker Build

Wenn ich eine Buildaufgabe in die Warteschlange einreihe, schlägt sie im Task Docker fehl.

Protokollausgabe:

Check Pfad: null Aufgabe Ergebnis: Fehler

Nicht gefunden Docker: null

Finishing Aufgabe: Docker

[Fehler] Aufgabe Docker fehlgeschlagen. Dies führte zum Fehlschlagen des Jobs. Weitere Informationen finden Sie in den Protokollen für die Aufgabe.

Hat jemand irgendwelche Gedanken darüber, was passieren könnte?

+0

Was ist die Aufgabendefinition? Wie hast du es angestellt? – kichik

Antwort

4

Nachdem dies untersucht wurde, scheint dies der Fall zu sein, wenn Docker nicht ordnungsgemäß auf dem Erstellungsagenten für den Dienstprinzipal installiert ist, unter dem der Agent ausgeführt wird.

Beachten Sie, dass:

  • Der Build muss in einem privaten Agenten ausgeführt werden, da die Gastgeber diejenigen noch nicht haben Docker installiert, wie pro eine sehr kleine Fußnote in der Unterseite des documentation .
  • Der VSTS-Agent muss mit einem Prinzipal ausgeführt werden, dessen Umgebungsvariablen für das Ausführen von docker festgelegt sind. Der Standardwert ist das LocalService-Konto, in dem dieses Verzeichnis nicht installiert ist. Dies stellt sich auch bei anderen Sachen als ein Problem heraus, und ich habe herausgefunden, dass es am besten ist, einen speziellen Benutzer-Principal zu haben, unter dem der Agent läuft, der sich auch in das System einloggen kann.

Das Beheben dieser zwei Probleme hat es für mich arbeiten lassen.

+0

Ich habe eine Weile gebraucht, um zu testen, aber nach diesen Schritten läuft docker perfekt auf dem Agenten. Vielen Dank. –

+0

Großartig das zu hören! Hoffentlich wird das Team die Dokumente bald verbessern. –

2

Ich konnte den Agenten auf Hosted VS2017, die Docker-Unterstützung hat, wechseln.

+0

Könnten Sie uns bitte eine kurze Information geben, wie Sie den Docker Build mit "Hosted VS2017" einrichten konnten? Es hat Docker-Unterstützung, aber ich bekomme immer noch Fehler während des Builds (Linux-basierter Container). –

+0

@PavelSapehin Es ist schon eine Weile her und unsere Skripte haben sich seitdem geändert. Wenn ich mich recht erinnere, habe ich nichts Besonderes gemacht und bin nur zu diesem Agenten gewechselt. Unser Docker war bereits auf diesem Agenten installiert. – QAZZY

+0

@PavelSapehin Ich habe gerade unser neuestes Build-Skript überprüft, es lief gut auf der Hosted Linux Preview, Hosted VS2017 und unserem privaten Linux. Wenn der Hosted-Agent fehlgeschlagen ist, weil dieser .net-Core fehlt. – QAZZY