Home

konteneryzacja

Konteneryzacja to technika pakowania aplikacji wraz z jej zależnościami w lekkich, odizolowanych środowiskach zwanych kontenerami. Kontenery uruchamiają aplikacje na wspólnym jądrze systemu operacyjnego hosta, wykorzystując mechanizmy izolacji jądra takie jak namespaces i control groups (cgroups). Dzięki temu kontenery są szybkie w uruchamianiu i przenośne między środowiskami chmurowymi, serwerami i środowiskami deweloperskimi, bez konieczności rekonfiguracji systemu.

Główne elementy konteneryzacji to obrazy kontenerów, które zawierają aplikację i wszystkie zależności, i środowisko wykonawcze (runtime),

Historia konteneryzacji zaczęła się od LXC i technik lekkich maszyn wirtualnych, lecz popularność zyskała wraz z

Zalety to m.in. lekkość i szybkie uruchamianie, izolacja procesów, łatwość skalowania i przenoszenia usług między środowiskami.

Konteneryzacja jest szeroko stosowana w architekturach mikroserwisów, CI/CD, testach automatycznych i edge computing, często jako wejście

które
uruchamia
kontenery.
Popularne
formaty
obrazów
to
OCI
i
Docker
Image
Spec.
Najważniejszymi
runtime’ami
są
Docker,
containerd
i
CRI-O.
Rejestry
obrazów
(np.
Docker
Hub,
registries)
przechowują
i
dystrybuują
obrazy.
W
praktyce
kontenery
są
orkiesrowane
przez
narzędzia
takie
jak
Kubernetes,
OpenShift
czy
Docker
Swarm.
Dockerem
w
2013–2014.
W
2015
powstał
projekt
OCI,
by
ujednolicić
standardy
obrazów
i
runtime’ów.
Wyzwania
obejmują
kwestie
bezpieczeństwa,
zarządzanie
zaufaniem
do
obrazów,
aktualizacje
i
złożoność
orkiestracji,
zwłaszcza
w
dużych
środowiskach
hybrydowych.
do
chmury
obliczeniowej.