docker · Docker
Die Meldung
unauthorized: incorrect username or password
Was es bedeutet
Die Registry hat die gesendeten Zugangsdaten abgelehnt. Häufiger als ein Tippfehler im Passwort ist ein Passwort, das an eine Registry ging, die Kontopasswörter gar nicht mehr annimmt — Docker Hub akzeptiert bei aktivierter Zwei-Faktor-Anmeldung nur Access Tokens, und die Registries von GitHub und GitLab wollten immer schon ein Token oder einen Deploy Key. docker logout löscht die gespeicherten Daten, danach docker login erneut mit einem Token. Als echo $TOKEN | docker login -u user --password-stdin übergeben, landet das Token nicht in der Shell-Historie.
Die Lösung
docker logout && docker login- Ausgegeben von
- docker
- Docker
- 12
Docker-Fehler werden erst lesbar, wenn man sie einer Schicht zuordnet — der Client erreicht den Daemon nicht, die Registry verweigert, ein RUN scheitert im Build, ein Container stirbt sofort beim Start: das sind vier verschiedene Probleme — und in der Build- und Laufzeitschicht ist die Zeile selbst nicht der Grund: der Grund steht in der Ausgabe des Befehls, der darin lief, und auch der Preis jeder Behebung unterscheidet sich je Schicht.
Eine Fehlermeldung lesen
- Von der ersten Zeile abwärts lesen. Weiter unten geht es um das Innere des Werkzeugs; die Ursache steht meist oben.
- Gibt es Datei und Zeilennummer, dort anfangen — nicht der oberste Stack-Frame, sondern die oberste Zeile, die eine eigene Datei nennt.
- Die Meldung wörtlich suchen, vorher aber eigene Pfade und Variablennamen entfernen; genau die verhindern den Treffer.
- Dieselbe Lage wird je Werkzeugversion anders formuliert. Passen die Treffer nicht, die Versionsnummer mit in die Suche.
- Vor dem Einfügen einer Lösung prüfen, was sie verwirft. Manches davon lässt sich nicht zurückholen.
Häufige Fragen
Q. Was bedeutet „unauthorized: incorrect username or password“?
Die Registry hat die gesendeten Zugangsdaten abgelehnt. Häufiger als ein Tippfehler im Passwort ist ein Passwort, das an eine Registry ging, die Kontopasswörter gar nicht mehr annimmt — Docker Hub akzeptiert bei aktivierter Zwei-Faktor-Anmeldung nur Access Tokens, und die Registries von GitHub und GitLab wollten immer schon ein Token oder einen Deploy Key. docker logout löscht die gespeicherten Daten, danach docker login erneut mit einem Token. Als echo $TOKEN | docker login -u user --password-stdin übergeben, landet das Token nicht in der Shell-Historie.
Q. Wie behebe ich das?
docker logout && docker login — vor dem Ausführen oben prüfen, was dieser Befehl verwirft.
Q. Welches Werkzeug gibt das aus?
docker. Es gehört zu Docker, und die Meldung hat 5 Wörter.