Kontejner je standardizovaná, spustitelná jednotka softwaru, která obsahuje vše, co aplikace potřebuje ke svému běhu: kód, běhové prostředí (runtime), systémové nástroje a knihovny. Je to technologie virtualizace na úrovni operačního systému, která umožňuje zabalit a izolovat aplikaci tak, aby spolehlivě fungovala v jakémkoliv prostředí.
Na rozdíl od tradičních virtuálních strojů (VM), které virtualizují celý hardware a vyžadují pro každý stroj kompletní kopii operačního systému, jsou kontejnery mnohem lehčí a efektivnější. Všechny kontejnery běžící na jednom hostitelském stroji sdílejí jeho operační systém a virtualizuje se pouze aplikační vrstva. Díky tomu startují téměř okamžitě (v řádu milisekund) a mají minimální režii.
Tento přístup přináší obrovské výhody. Vývojáři mohou vytvářet a testovat aplikace v konzistentním prostředí, které je identické s tím produkčním, což eliminuje chyby způsobené rozdílným nastavením. Pro provoz (Ops) zase kontejnery zjednodušují nasazování, škálování a správu aplikací. Platformy jako Docker zpopularizovaly používání kontejnerů a nástroje pro jejich orchestraci, jako je Kubernetes, umožňují spravovat a provozovat i ty nejkomplexnější aplikace postavené na stovkách kontejnerů.