docker · Docker
Die Meldung
failed to register layer: Error processing tar file(exit status 1): no space left on device
Was es bedeutet
Auf der Platte ist kein Platz, um die Image-Schicht auszupacken. Meist ist nicht das Projekt groß, sondern Docker hält weiter monatealte Images, Build-Cache und Volumes entfernter Container. docker system df zeigt, wie viel in Images, Containern, Volumes und Build-Cache steckt und wie viel davon zurückgewinnbar ist — lesen Sie das, bevor Sie etwas löschen. docker system prune entfernt gestoppte Container, verwaiste Images, unbenutzte Netzwerke und den Build-Cache; ohne diesen Cache ist der nächste Build merklich langsamer. Mit --volumes werden zusätzlich Volumes gelöscht, die an keinem Container hängen — genau dort verlieren Leute ihre Datenbanken.
Die Lösung
docker system df- 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 „failed to register layer: Error processing tar file(exit status 1): no space left on device“?
Auf der Platte ist kein Platz, um die Image-Schicht auszupacken. Meist ist nicht das Projekt groß, sondern Docker hält weiter monatealte Images, Build-Cache und Volumes entfernter Container. docker system df zeigt, wie viel in Images, Containern, Volumes und Build-Cache steckt und wie viel davon zurückgewinnbar ist — lesen Sie das, bevor Sie etwas löschen. docker system prune entfernt gestoppte Container, verwaiste Images, unbenutzte Netzwerke und den Build-Cache; ohne diesen Cache ist der nächste Build merklich langsamer. Mit --volumes werden zusätzlich Volumes gelöscht, die an keinem Container hängen — genau dort verlieren Leute ihre Datenbanken.
Q. Wie behebe ich das?
docker system df — 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 15 Wörter.