Die Lösung besteht darin, es im Behälter zu fälschen. Diese Bibliothek fängt alle Systemaufrufprogramme ab, die zum Abrufen der aktuellen Uhrzeit und des aktuellen Datums verwendet werden.
Die Implementierung ist einfach. Fügen Sie Ihrer Docker-Datei gegebenenfalls Funktionen hinzu:
WORKDIR /RUN git clone https://github.com/wolfcw/libfaketime.gitWORKDIR /libfaketime/srcRUN make install
Denken Sie daran, die Umgebungsvariablen festzulegen LD_PRELOAD bevor Sie die Anwendung ausführen, auf die die gefälschte Zeit angewendet werden soll.
import osdef set_time(request): print(datetime.today()) os.environ["FAKETIME"] = "2020-01-01" # Note: time of type string must be in the format "YYYY-MM-DD hh:mm:ss" or "+15d" print(datetime.today())