Sie sind signifikant unterschiedlich. Ein Java-Programm ist ein Prozess auf dem OS-Kernel. Eine JVM läuft, die den Bytecode ausführt, der das Java-Programm ist. Das Java-Programm könnte eine beliebige Menge an Ressourcen verwenden (abhängig von den JVM-Limits) und das Betriebssystem beliebig verwenden.
Ein Andock-Container ist eine Implementierung der Betriebssystemvirtualisierung. Der einfachste Weg, um Container zu verstehen, wäre, dass sie einen unabhängigen Teil des Betriebssystems mithilfe von Virtualisierung bereitstellt. Die Ressourcennutzung des Containers kann begrenzt sein und kann isoliert werden, so dass er keinen Teil des Systems außerhalb des Containers kennt, wie das Dateisystem, das Netzwerk, die Prozesse. Der Kernel bietet bestimmte Funktionen - CGroups und Namespaces, die zum Bereitstellen von Containern verwendet werden.
Docker Container ist eine gerechte Kontrollgruppe, nein? –
@schtever Beide Links funktionieren nicht mehr. –