Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Was bedeutet Inhaltsunabhängigkeit in Docker?

Was bedeutet Inhaltsunabhängigkeit in Docker?

青灯夜游
青灯夜游Original
2022-05-12 15:07:213557Durchsuche

Inhaltsunabhängigkeit bedeutet: Das Programm kann unabhängig von der Sprache im Container ausgeführt werden und jede Nutzlast und ihre Abhängigkeiten kapseln. In Docker kann die Standardoperation des Containers unabhängig vom konkreten Containerinhalt den gleichen Effekt erzeugen; der Container kann beispielsweise auf die gleiche Weise hochgeladen und gestartet werden, unabhängig davon, ob es sich um eine PHP-Anwendung oder einen MySQL-Datenbankdienst handelt .

Was bedeutet Inhaltsunabhängigkeit in Docker?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker20-Version, Dell G3-Computer.

Was ist Docker?

Docker ist eine Open-Source-Anwendungscontainer-Engine, die auf Basis der Go-Sprache entwickelt wurde und der Open-Source-Vereinbarung Apache2.0 entspricht. Mithilfe von Docker können Entwickler ihre Anwendungen und Abhängigkeitspakete in einen tragbaren Container packen und sie dann auf jeder Linux-Maschine veröffentlichen, die auch virtualisiert werden kann. Docker-Container nutzen vollständig den Sandbox-Mechanismus und haben keine Schnittstellen untereinander, was die Sicherheit zwischen Containern gewährleistet.

Docker wurde Anfang 2013 geboren und verfügt derzeit über zwei Versionen: Community Edition (CE, Community Edition) und Enterprise Edition (EE, Enterprise Edition). Darunter ist die Docker Community Edition kostenlos und Open Source, was eine ideale Wahl für Einzelpersonen und kleine Teams ist; die Docker Enterprise Edition wird speziell für Unternehmen und große IT-Teams für kommerzielle Anwendungen mit strengeren Anforderungen bereitgestellt.

Hauptfunktionsmerkmale von Docker

Inhaltsunabhängig

Programme können in Containern ohne Unterscheidung von Sprachen ausgeführt werden und können jede Nutzlast und ihre Abhängigkeiten kapseln.

Unabhängig vom spezifischen Containerinhalt kann die Container-Standardoperation nach der Ausführung den gleichen Effekt erzielen. Beispielsweise können Container auf die gleiche Weise hochgeladen und gestartet werden, egal ob es sich um eine PHP-Anwendung oder einen MySQL-Datenbankdienst handelt.

Hardware-Agnostiker

Verwenden Sie Betriebssystemprimitive (zum Beispiel: LXC), um auf fast jeder Plattform zu laufen – virtuelle Maschine, Bare Metal, OpenStack, öffentliches IaaS usw., ohne den Inhalt zu ändern

Isolation und Interaktion

Ressourcen-, Netzwerk- und Inhaltsisolation, Abhängigkeitshölle vermeiden

Automatisierung

Es gibt Standardvorgänge zum Ausführen, Starten, Stoppen, Senden, Suchen usw., die sich sehr gut für Entwickler eignen: CI, CD, automatische Erweiterung, Hybrid Cloud

Effizient

Leichtgewichtig, praktisch ohne Vorurteile und Startstrafen, ermöglicht schnelle Bewegungen und Abläufe

Aufteilung der Aufgabenbereiche

Entwickler kümmern sich um Code, Betriebe kümmern sich um die Infrastruktur

Weitere technische Merkmale:

  • Dateisystemisolation: Jeder Prozesscontainer wird in einem völlig unabhängigen Root-Dateisystem ausgeführt.

  • Ressourcenisolation: Systemressourcen wie CPU, Speicher usw. werden mithilfe von cgroups im Prozesscontainer zugewiesen ;

  • Netzwerkisolation: Jeder Prozesscontainer verfügt über eine eigene virtuelle Schnittstelle und IP-Adresse und wird in seinem eigenen Netzwerkbereich ausgeführt.

  • Kopieren beim Schreiben: Erstellen Sie das Root-Dateisystem, indem Sie es kopieren Die Bereitstellungsgeschwindigkeit ist extrem hoch und der Arbeitsspeicher und der Festplattenspeicher sind sehr klein.

  • Protokoll: Docker erfasst und zeichnet den Standard-Stream (stdout/stderr/stdin) jedes Prozesscontainers für den Echtzeitabruf oder den Stapelabruf auf ;

  • Änderungsverwaltung: Änderungen am Container-Dateisystem können an ein neues Image (Image) übermittelt und zur Erstellung weiterer Container wiederverwendet werden. Keine Notwendigkeit, Vorlagen oder manuelle Konfiguration zu verwenden;

  • Interaktive Shell: Docker kann ein virtuelles Terminal zuweisen und es der Standardeingabe eines beliebigen Containers zuordnen, beispielsweise zum Ausführen einer einmaligen interaktiven Shell.

Docker wird normalerweise in den folgenden Szenarien verwendet:

Automatisiertes Packen und Freigeben von Webanwendungen; orientierte Umgebungen;

Kompilieren Sie die vorhandene OpenShift- oder Cloud Foundry-Plattform von Grund auf, um Ihre eigene PaaS-Umgebung aufzubauen.

Empfohlenes Lernen: „

Docker-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas bedeutet Inhaltsunabhängigkeit in Docker?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn