Junior
Milyen elveken működik a Docker?
sobes.tech MI
Válasz az MI-től
A Docker a következő kulcsfontosságú elveken alapul:
- Konténerizáció: Az alkalmazások és függőségeik izolálása szabványosított, hordozható modulokban (konténerekben).
- Képek: Könnyű, önálló futtatható csomagok, amelyek minden szükséges dolgot tartalmaznak az alkalmazás futtatásához (kód, könyvtárak, rendszereszközök, beállítások). Ezek lépésről lépésre épülnek Dockerfile segítségével.
- Rétegek: A képek rétegekből állnak. Minden réteg a fájlrendszerben végrehajtott változások halmazát képviseli. A rétegek cache-elhetők és újra felhasználhatók különböző képek által, így helyet takarítanak meg és gyorsítják az építést.
- Izoláció: A konténerek Linux kernel izolációs mechanizmusokat (namespace-ek és cgroups) használnak a folyamatok, fájlrendszerek, hálózatok és más erőforrások elkülönítésére a gazda rendszertől és más konténerektől.
- A képek változatlansága: Amikor egy konténert egy kép alapján indítanak, maga a kép nem változik. A konténeren belüli összes változás egy írható rétegen történik a báziskép felett, amely a konténerrel együtt törlődik (ha nem használnak volume-okat).
- Áthelyezhetőség: Egy fejlesztett és épített konténer egy környezetben bármely más környezetben futtatható, ahol Docker telepítve van, anélkül, hogy további függőségi beállításokra lenne szükség a gazdán.
- Deklaratív megközelítés: A Dockerfile leírja a kép építési folyamatát deklaratív stílusban, így reprodukálható és automatizálható.
Példa Dockerfile:
# Egy Alpine Linux alapképet használunk
FROM alpine:latest
# A curl csomag telepítése
RUN apk add --no-cache curl
# A parancs megadása, amely a konténer indításakor fut
CMD ["curl", "https://www.example.com"]