1.2 Terminologiya
Oldingi bo'limda biz Docker-ga xos jargonlardan ko'p foydalanganmiz va bu ko'pchilikni chalkashtirib yuborishi mumkin. Davom etishdan oldin, keling, Docker ekotizimida tez-tez ishlatiladigan ba'zi atamalarni ajratamiz.
Images (timsollar) - konteynerlarning asosi bo'lgan bizning ilovamiz sxemalari. Yuqoridagi misolda biz bandbox timsolini yuklab olish uchun docker pull buyrug'idan foydalanganmiz.
Konteynerlar (konteynerlar) - Timsol asosida yaratilgan va dasturni o'zi ishga tushiradi. Biz konteynerni docker run bilan yaratdik va avval yuklab olgan busybox timsolidan foydalandik. Ishlayotgan konteynerlar ro'yxatini docker ps buyrug'i bilan ko'rish mumkin.
Docker Daemon (Docker daemon) - Docker konteynerlarini yaratish, ishga tushirish va yo'q qilish uchun mas'ul bo'lgan asosiy kompyuterda ishlaydigan fon xizmati. Demon - mijoz o'zaro aloqada bo'lgan operatsion tizimda ishlaydigan jarayon.
Docker Client (Docker mijozi) - Buyruqlar qatori yordam dasturi, bu foydalanuvchiga demon bilan ishlashga imkon beradi. Mijozning boshqa shakllari mavjud, masalan, Kitematic, grafik interfeysga ega.
Docker Hub - Docker timsol registri. Taxminan aytganda, barcha mavjud obrazlarning arxivi. Agar kerak bo'lsa, siz o'zingizning reestringizni saqlashingiz va undan timsollarni olish uchun foydalanishingiz mumkin.
2.0 Veb-ilovalar va Docker
Super! Endi biz docker run bilan qanday ishlashni o'rgandik, bir nechta konteynerlar bilan o'ynadik va terminologiyani aniqladik. Ushbu bilimlar bilan qurollangan holda biz haqiqiy narsaga o'tishga tayyormiz: Docker bilan veb-ilovalarni joylashtirish!
2.1 Statik saytlar
Kichikdan boshlaylik. Keling, eng oddiy statik veb-saytni ko'rib chiqaylik. Keling, obrazni Docker Hub’dan yuklab olamiz, konteynerni ishga tushiramiz va veb-serverni ishga tushirish qanchalik osonligini ko‘ramiz.
Bor. Bitta sahifali sayt uchun bizga ushbu o'quv qo'llanma uchun avval yaratilgan va ro'yxatga olish kitobiga joylashtirilgan obraz kerak - prakhar1989/static-site. Timsolni to'g'ridan-to'g'ri docker run buyrug'i bilan yuklab olishingiz mumkin.
Timsol lokal sifatida mavjud emasligi sababli, mijoz avval timsolni registrdan yuklab oladi va keyin uni ishga tushiradi. Agar hamma narsa yaxshi bo'lsa, terminalda Nginx ishlayapti degan xabarni ko'rasiz. Hozir server ishlayapti. Saytni ishlayotganini qanday ko'rish mumkin? Server qaysi portda ishlaydi? Va, eng muhimi, mezbon konteynerdan to'g'ridan-to'g'ri konteynerga qanday erishish mumkin?
Bizning holatda mijoz hech qanday portni ochmaydi, shuning uchun portlarni hammaga ochiq qilish uchun docker run buyrug'ini qayta ishga tushirishimiz kerak bo'ladi. Shu bilan birga, terminalning ishlaydigan konteynerga ulanmaganligiga ishonch hosil qilaylik. Bunday holda siz terminalni xavfsiz yopishingiz mumkin va konteyner ishlashni davom ettiradi. Bu alohida rejim deb ataladi.
-d bayrog'i terminalni ajratadi (ajratadi), -P bayrog'i barcha ochiq portlarni umumiy va tasodifiy qiladi va nihoyat --name bayrog'i biz konteynerga bermoqchi bo'lgan nomdir. Endi siz docker port [CONTAINER] buyrug'i yordamida portlarni ko'rishingiz mumkin.
Brauzeringizda http://localhost:32769-ni oching.
Eslatma: Agar siz docker-toolbox-dan foydalansangiz, IP-manzilni olish uchun standart docker-machine IP-dan foydalanishingiz kerak bo'lishi mumkin.
Siz portingizni ham belgilashingiz mumkin. Mijoz ulanishlarni unga yo'naltiradi.
Konteynerni to'xtatish uchun docker stop-ni ishga tushiring va konteyner identifikatorini belgilang.
Qabul qilaman, hamma narsa juda oddiy edi. Buni haqiqiy serverga joylashtirish uchun Dockerni o'rnatishingiz va yuqoridagi buyruqni bajarishingiz kifoya. Endi siz obraz ichida veb-serverni qanday ishga tushirishni ko'rganingizdan so'ng, siz o'zingizning Docker timsolingizni qanday yaratishni qiziqtirgandirsiz? Ushbu mavzuni keyingi bo'limda o'rganamiz.
Do'stlaringiz bilan baham: |