[Docker] Starten Sie den Container so schnell wie möglich

Umweltinformationen

Docker Engine v18.09
RHEL7 mit ca. 20 GB Speicher

Vom Container verwendetes Dateisystem

Die zugehörigen Dateien von Docker befinden sich in / var / lib / docker und werden auf dem Standarddateisystem ausgeführt, sofern nicht anders angegeben.

# df /var/lib/docker
..
/dev/mapper/rhel-var ... /var

Daher wird häufig gehört, dass, wenn Sie zu viele Bilder lokal speichern, die folgenden Punkte eng sind.

/var/lib/docker/overlay2/

Der Containerstart ist schneller, wenn er kontinuierlich ist

Eine überraschend unbekannte Tatsache ist, dass wenn Sie Container nacheinander starten, das zweite Mal etwas schneller ist </ b>.

Dies ist der Unterschied, ob das Docker-Image auf der Festplatte gespeichert ist oder im Speichercache verbleibt. Wenn du es fühlen willst

time docker run ubuntu echo "hello"

Bitte starten Sie einen Container wie diesen und drücken Sie Befehle, die standardmäßig nur Hallo ausgeben. Es sollte etwas schneller sein.

Übrigens wird in der Umgebung, in der ich spiele, 0,8s zu 0,6s, es handelt sich also um einen Fehler. Wenn sich dies jedoch deutlich ändert, werden die folgenden Maßnahmen empfohlen.

Machen Sie / var / lib / docker zu einer RAM-Disk

Ich werde die Erklärung und das Erstellen einer RAM-Disk weglassen, aber Docker stoppen → Kopieren / var / lib / Docker mit einem anderen Namen → / var / lib / Docker als neues Dateisystem vorbereiten → Kopierte Dateien erweitern → Docker Wenn Sie starten, wird es immer mit der Geschwindigkeit gestartet, die sich im Cache befindet.

Aufgrund des Speichers verschwindet es jedoch bei jedem Neustart. Wenn Sie das Image also lokal haben, müssen Sie sich darum kümmern. Wenn Sie dies tun, beachten Sie außerdem, dass das gesamte System möglicherweise ausgetauscht wird, wenn Sie dies nicht in einer Umgebung mit viel Speicher tun.

Zusammenfassung

Indem Sie alle Docker-bezogenen Dateien im Speicher ablegen, können Sie den Betrieb der Containerumgebung beschleunigen. Außerdem wird im Wesentlichen verhindert, dass die Startzeit schwankt, je nachdem, ob sich das Image auf der Festplatte oder im Speicher befindet. Wenn beim kontinuierlichen Starten eine große Zeitverzögerung auftritt, ist ein Design, das dieses Verwackeln beseitigt, wichtig, wenn die Zeit zur Bestimmung des Startfehlers verwendet wird.

das ist alles.

Recommended Posts

[Docker] Starten Sie den Container so schnell wie möglich
Starten Sie den Container automatisch
[Linux] Starten Sie den Apache-Container mit Docker
Die Geschichte der Aktualisierung des Docker-Containers von Sonar Qube
[Docker] Starten Sie den Container, starten Sie die Bash im Container und löschen Sie das Bild
So überprüfen Sie das Protokoll im Docker-Container
So mounten Sie den Speicherort der Batchdatei über WSL2 und starten den Docker-Container
Kleiner Docker Container
Ändern Sie den Docker-Image- und Container-Platzierungsordner
Docker + Spring-Boot-Start
[Docker] So sehen Sie den Inhalt von Volumes. Starten Sie einen Container mit Root-Rechten.
[Docker] Wenn Sie den Datenbankcontainer betreten und die Daten anzeigen, wird Japanisch als ??? angezeigt.
Docker-Container-Nutzungsszene
Kopieren Sie den Dateiinhalt und fügen Sie ihn in den Ubuntu Docker-Container ein
Nginx-Container, der den Hostnamen des Hosts anzeigt, auf dem Docker ausgeführt wird
[Docker] Löschen Sie nur das Volume, das einem bestimmten Container zugeordnet ist
Die Zeit ist falsch mit der Anwendung, die auf dem Docker-Container gestartet wurde
[Docker] Zugriff auf den Host aus dem Container heraus. http: //host.docker.internal: