Junior
Docker hansı prinsiplər əsasında işləyir?
sobes.tech Süni İntellekt
AI-dan cavab
Docker aşağıdakı əsas prinsiplər əsasında işləyir:
- Konteynerləşdirmə: Tətbiqlərin və onların asılılıqlarının standartlaşdırılmış, daşına bilən modullarda (konteynerlərdə) izolyasiyası.
- İmajlar: Yüngül, müstəqil işlədilə bilən paketlərdir və tətbiqi işlətmək üçün lazım olan hər şeyi (kod, kitabxanalar, sistem alətləri, konfiqurasiyalar) özündə saxlayır. Dockerfile istifadə edilərək mərhələli şəkildə qurulur.
- Qatlar: İmajlar qatlardan ibarətdir. Hər qat fayl sistemində dəyişikliklər toplusunu təmsil edir. Qatlar keşikdə saxlanılır və müxtəlif imajlar tərəfindən təkrar istifadə oluna bilər, bu da yer qənaət edir və quruluşu sürətləndirir.
- İzolyasiya: Konteynerlər Linux nüvəsinin izolyasiya mexanizmlərindən (namespaces və cgroups) istifadə edərək prosesləri, fayl sistemlərini, şəbəkəni və digər resursları ana sistemdən və digər konteynerlərdən ayırır.
- İmajların dəyişməzliyi: Bir konteyner imaj əsasında başladıqda, imaj özü dəyişmir. Konteyner daxilindəki bütün dəyişikliklər əsas imajın üzərində yazıla bilən qatda baş verir və konteyner ilə birlikdə silinir (əgər həcm istifadə olunmayıbsa).
- Daşına bilənlik: Bir mühitdə inkişaf etdirilən və qurulan konteyner, Docker quraşdırılmış hər hansı digər mühitdə işlədilə bilər, əlavə asılılıq konfiqurasiyalarına ehtiyac olmadan.
- Deklarativ yanaşma: Dockerfile imajın qurulma prosesini deklarativ tərzdə təsvir edir, bu da onu təkrarlana bilən və avtomatlaşdırıla bilən edir.
Nümunə Dockerfile:
# Alpine Linux ilə əsas imajdan istifadə edin
FROM alpine:latest
# curl paketini quraşdırın
RUN apk add --no-cache curl
# Konteyner başladıqda icra ediləcək əmri göstərin
CMD ["curl", "https://www.example.com"]