Virtualisierung hat die Informationstechnologie revolutioniert. Die Verteilung der Ressourcen eines physischen Rechners auf mehrere virtuelle Maschinen (VM) hat vor allem in Form der Hardware-Virtualisierung Einzug in die IT-Landschaft gehalten. Dieser Ansatz beruht auf der Emulation von Hardwarekomponenten, um auf einem gemeinsamen Hostsystem verschiedene virtuelle Server mit eigenem Betriebssystem (Operating System, OS) bereitstellen zu können. Zum Einsatz kommt ein solcher Aufbau oft in der Software-Entwicklung, wenn auf einem Computer verschiedene Testumgebungen realisiert werden sollen. Virtualisierung bildet zudem die Grundlage diverser Webhosting-Produkte, bei denen Serverleistung cloudbasiert zur Verfügung gestellt wird.
Eine Alternative zur Hardware-Virtualisierung stellt die Virtualisierung auf Betriebssystemebene dar. Dabei werden verschiedene Server-Anwendungen in isolierten virtuellen Umgebungen – sogenannten Containern – realisiert, die alle auf demselben Betriebssystem laufen. Man spricht daher auch von containerbasierter Virtualisierung. Genau wie virtuelle Maschinen mit jeweils eigenem Betriebssystem bieten auch Container die Möglichkeit, verschiedene Anwendungen mit unterschiedlichen Anforderungen parallel auf ein und demselben physischen System zu nutzen. Da Container kein eigenes OS beinhalten, zeichnet sich diese Virtualisierungstechnik durch eine deutlich schlankere Installation und einen geringen Overhead aus.
Server-Container sind keine neue Erfindung, ins Zentrum der Aufmerksamkeit rückt die Technologie derzeit jedoch durch Open-Source-Projekte wie Docker und rkt von CoreOS.