Sobes.tech
Junior

Docker qaysi asosiy xususiyatlarga asoslangan?

sobes.tech AI

AIdan javob

Dockerning asosiy xususiyatlari:

  • Jarayonlarni izolyatsiya qilish: Konteynerlar tabiatan bir-biridan va host tizimidan izolyatsiyalangan. Bu Linux yadrosi mexanizmlari, masalan, namespaces (PID, NET, IPC, MNT, UTS) va cgroups (CPU, xotira, I/O resurslarini cheklash uchun) yordamida ta'minlanadi.

  • Rasmlar: Docker rasmi — bu o'zgarmas, qatlamli artefakt bo'lib, u ilovani ishga tushirish uchun zarur bo'lgan hamma narsani o'z ichiga oladi: kod, kutubxonalar, bog'liqliklar, vositalar va konfiguratsiya fayllari. Rasmlar "qatlamlar ustiga qatlamlar" tamoyili bo'yicha quriladi, bu umumiy komponentlarni qayta ishlatish va joyni tejash imkonini beradi.

  • Konteynerlar: Konteyner — bu rasmning ishga tushirilgan nusxasi. U yengil, portativ va ishga tushirilgan ilovani o'z ichiga oladi. Konteynerlar tezda ishga tushirilishi, to'xtatilishi, ko'chirilishi va kengaytirilishi mumkin.

  • Dockerfile: Dockerfile fayli Docker rasmi qurilish jarayonini tavsiflovchi ko'rsatmalar to'plamini o'z ichiga oladi. Bu, takrorlanadigan va avtomatlashtirilgan qurilish uchun deklarativ yondashuv.

    # Dockerfile misoli
    FROM alpine:3.14 // Asosiy rasm
    RUN apk add --no-cache nginx // Paketlarni o'rnatish
    COPY html/ /usr/share/nginx/html/ // Fayllarni nusxalash
    EXPOSE 80 // Portni ochish
    CMD ["nginx", "-g", "daemon off;"] // Konteyner ishga tushirilganda bajariladigan buyruq
    
  • Qatlamli fayl tizimi: Docker Union File Systems (AUFS, OverlayFS) dan foydalanadi, bu qatlamlardan rasm yaratishga imkon beradi. Har bir qatlam avvalgisiga nisbatan o'zgarishlar to'plamini ifodalaydi. Bu xususiyat rasmlarni tez yaratish, qatlamlarni kechiktirish va disk bo'shligini samarali ishlatish imkonini beradi.

  • Docker registri: Docker registrlari (masalan, Docker Hub, GCR, ACR) Docker rasmlarini saqlash va tarqatish uchun ishlatiladi. Ular dasturchilar, jamoalar va muhitlar o'rtasida rasmlarni almashishni osonlashtiradi.

  • Portativlik: Rasmlar va konteynerlar portativ bo'lish uchun mo'ljallangan. Bir platformada qurilgan rasm, Docker o'rnatilgan har qanday boshqa platformada ishga tushirilishi mumkin, bog'liqliklarni qayta sozlash shart emas.

  • Tez ishga tushirish: Konteynerni ishga tushirish, to'liq operatsion tizimni yuklashga nisbatan ancha tezroq, chunki to'liq operatsion tizimni yuklash shart emas.

  • Resurslardan samarali foydalanish: Konteynerlar host tizimining resurslarini virtual mashinalarga qaraganda samaraliroq ishlatadi, chunki ular alohida CPU yadrolarini ajratishni talab qilmaydi.