CodeGym /Kurslar /Docker SELF /Docker əsas şəbəkə sürücüləri

Docker əsas şəbəkə sürücüləri

Docker SELF
Səviyyə , Dərs
Mövcuddur

1.1 Bridge şəbəkə driveri

Docker-ın şəbəkə driverləri konteynerlərin bir-biri ilə və xarici şəbəkələrlə qarşılıqlı əlaqə yaratmasına imkan verir. Docker bir neçə şəbəkə driveri təqdim edir, hər biri öz xüsusiyyətlərinə malikdir və müəyyən istifadə ssenariləri üçün nəzərdə tutulub. Bu mühazirədə biz dörd əsas şəbəkə driverinə baxacağıq: bridge, host, noneoverlay.

Bridge şəbəkə driveri Docker-da standart şəbəkə driveridir. O, konteynerlərin bir-biri ilə ünsiyyətdə ola biləcəyi özəl bir daxili şəbəkə yaradır. Bu şəbəkə host-un xarici şəbəkəsindən təcrid olunub.

Xüsusiyyətlər:

  • bridge şəbəkəsinə qoşulmuş konteynerlər IP ünvanları vasitəsilə bir-biri ilə qarşılıqlı əlaqə yarada bilərlər.
  • Xarici şəbəkələr bridge şəbəkəsindəki konteynerlərlə birbaşa qarşılıqlı əlaqə yarada bilməz, əgər port forwarding qurulmayıbsa.
  • Lokal inkişaf və test ssenariləri üçün istifadəsi rahatdır.

İstifadə nümunəsi:

Şəbəkə göstərilmədən konteyner yaratdıqda, o avtomatik olaraq bridge şəbəkəsinə qoşulur.

Terminal


docker run -d --name my_container nginx 

Port forwarding-i qurmaq üçün -p flag-dən istifadə olunur.

Terminal


docker run -d -p 8080:80 --name my_container nginx 

1.2 Şəbəkə driveri Host

Şəbəkə driveri host konteynerə host maşınının şəbəkə stack-dan birbaşa istifadə etməyə imkan verir. Bu o deməkdir ki, konteyner hostun IP ünvanına sahib olacaq və hostun bütün şəbəkə interfeyslərindən istifadə edə biləcək.

Xüsusiyyətlər:

  • Şəbəkə driveri host istifadə edən konteynerlər şəbəkə virtualizasiyası ilə əlaqəli overhead-i azaldaraq daha sürətli işləyirlər.
  • Konteynerlər hostun istifadə etdiyi şəbəkə interfeyslərinə çıxış əldə edir, bu isə təhlükəsizlik riskini artıra bilər.
  • Yüksək şəbəkə performansı və ya spesifik şəbəkə konfiqurasiyası tələb edən ssenarilər üçün uyğundur.

İstifadə nümunəsi:

Terminal


docker run -d --network host --name my_container nginx 

1.3 Şəbəkə sürücüsü None

none şəbəkə sürücüsü konteynerin bütün şəbəkə imkanlarını deaktiv edir. none şəbəkəsinə qoşulmuş konteynerin şəbəkə interfeysi yoxdur və bu, onu digər konteynerlərdən və şəbəkələrdən tamamilə təcrid edir.

Xüsusiyyətlər:

  • Konteynerin bütün şəbəkələrdən tam təcrid olunması.
  • Şəbəkədən asılı olmayan tapşırıqları yerinə yetirmək üçün, məsələn, şəbəkəyə ehtiyac duymayan konteynerlər üçün istifadə olunması rahatdır.

İstifadə nümunəsi:

Terminal


docker run -d --network none --name my_container busybox 

1.4 Şəbəkə sürücüsü Overlay

overlay şəbəkə sürücüsü bir neçə Docker hostlarını əhatə edən paylanmış şəbəkə yaratmaq üçün istifadə olunur. Bu sürücü tez-tez Docker Swarm və ya Kubernetes-də konteynerlərin fərqli hostlar arasında şəbəkə əlaqəsini təmin etmək üçün istifadə olunur.

Əsas xüsusiyyətləri:

  • Fərqli hostlarda olan konteynerlər arasında əlaqəni təmin edir.
  • Docker Swarm kimi konfiqurasiya edilmiş klaster tələb edir.
  • Mövcud şəbəkələrin üzərində virtual şəbəkələr yaratmağa imkan verir, bu da yüksək səviyyədə təcrid və təhlükəsizlik təmin edir.

İstifadə nümunəsi:

overlay sürücüsünü istifadə etmək üçün əvvəlcə Docker Swarm klasteri yaratmaq lazımdır.

1. Docker Swarm-ın başlatılması:

Terminal


docker swarm init

2. Overlay şəbəkəsinin yaradılması:

Terminal

        
docker network create -d overlay my_overlay_network 

3. overlay şəbəkəsinə qoşulmuş konteynerlərin işə salınması:

Terminal

docker service create --name my_service --network my_overlay_network nginx 

1.5 Şəbəkə sürücülərinin müqayisəsi

Müxtəlif şəbəkə sürücülərinin müqayisəsi

Şəbəkə sürücüsü İzolyasiya Performans Tətbiq sahəsi Xüsusiyyətlər
bridge Yüksək Orta Lokal şəbəkələr Varsayılan izolyasiya olunmuş şəbəkə
host Aşağı Yüksək Performans Host ilə ümumi şəbəkə steki
none Tam Ən yüksək İzolyasiya Şəbəkədən tam izolyasiya
overlay Yüksək Yüksək Dağıtılmış şəbəkələr Fərqli hostlardakı konteynerlər arasında əlaqə

Şəbəkə sürücülərinin tətbiqi

  • Bridge: Lokal tətbiqlər və test üçün istifadə edin, konteynerlər bir-birilə qarşılıqlı əlaqədə olmalıdır, lakin xarici şəbəkədən izolyasiya edilməlidir.
  • Host: Şəbəkənin yüksək performansı tələb edən və ya xüsusi şəbəkə konfiqurasiyaları tələb edən tətbiqlər üçün istifadə edin, burada şəbəkə izolyasiyası prioritet deyil.
  • None: Şəbəkə qarşılıqlı əlaqəsi tələb etməyən tam izolyasiya olunmuş konteynerlər üçün istifadə edin.
  • Overlay: Klasterdə işləyən dağıtılmış tətbiqlər üçün istifadə edin, burada müxtəlif hostlardakı konteynerlər arasında əlaqəni təmin etmək lazımdır.
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION