Your First Container
Birinchi konteyneringiz
Konteyner ishlatishni telefonga ilova o'rnatishga o'xshating: siz ilovaning o'zini yozmaysiz, uni "do'kon"dan (bu yerda — Docker Hub) yuklab olasiz va darhol ishga tushirasiz. Docker'da ham xuddi shunday: minglab tayyor "image"lar (masalan, Go, Python, MySQL uchun) bor, ularni yuklab, bir zumda ishga tushirish mumkin.
$ docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.docker run hello-world buyrug'i uchta ishni ketma-ket bajaradi: (1) hello-world nomli imageni ("qandaydir dasturning tayyor nusxasi, xuddi o'rnatish fayli kabi") kompyuteringizda qidiradi; (2) topilmasa, Docker Hub'dan (Docker'ning "ilovalar do'koni") avtomatik yuklab oladi; (3) o'sha image'dan yangi konteyner yaratib, uni ishga tushiradi. Konteyner — image'ning "jonlangan", ishlab turgan nusxasi.
Image va konteyner orasidagi farq — retsept va tayyor taom orasidagi farqqa o'xshaydi: image — statik "retsept" (fayllar, sozlamalar), konteyner esa shu retseptdan tayyorlangan, hozir "iste'mol qilinayotgan" (ishlab turgan) taom. Bitta image'dan bir nechta konteyner yaratish mumkin — xuddi bitta retseptdan bir necha marta taom pishirish mumkin bo'lgani kabi.
$ docker ps # ishlab turgan konteynerlarni ko'rsatadi
$ docker ps -a # HAMMA konteynerlarni (to'xtaganlarini ham) ko'rsatadi
$ docker images # kompyuterda yuklangan barcha image'larni ko'rsatadiKey Takeaway
Key Takeaway:
docker run <image> — image'ni yuklab (agar mavjud bo'lmasa) va undan konteyner yaratib ishga tushiradi; image — "retsept", konteyner — shu retseptdan tayyorlangan, ishlab turgan nusxa.
NEXT UP
Building Docker Images