Wenn apt-get in Docker unter Windows nicht mehr funktioniert

Windows als Docker-Host zu verwenden ist leider eine Kunst für sich und ein Wechsel des Supervisors schafft viele Probleme. Nutzt man das Windows Subsystem for Linux, kurz WSL, kann es zu seltsamen Nebenwirkung kommen.

In diesem Falle schlagen Befehle über den Linux-Paketmanager, wie z. B. apt-get update, fehl. Eine Fehlermeldung, die mir häufig begegnet ist:

Release file for http://.../InRelease is not valid yet (Invalid for another ...). Updates for this repository will not be applied.

Die Ursache ist relativ einfach: Euer Windows war wahrscheinlich im Stromsparmodus oder der Hibernation. Der WSL-Layer bekommt die Änderungen in den Zeitinformationen aber nicht immer sauber kommuniziert.

Bestätigen könnt ihr das Problem in dem ihr auf der Konsole des Containers über den date-Befehl schaut, wie stark eure Zeit tatsächlich vom Host-System abweicht:

docker run --rm busybox date

Die Lösung ist denkbar einfach: Startet entweder das Windows-Hostsystem oder den Supervisor-Dienst komplett durch.