Docker Network Temelleri ve Konfigürasyonu


Docker Network Temelleri ve Konfigürasyonu

Docker Network Nedir?

Docker Network, konteynerler arasında iletişim kurmayı ve dış dünyaya açılmayı sağlayan ağ altyapısıdır. Modern uygulamalarda konteynerlerin birbiriyle kolayca haberleşebilmesi, güvenli ve ölçeklenebilir bir yapı kullanılarak sağlanır. Docker Network temelleri, uygulama bileşenlerinin izole şekilde iletişim kurmasını ve ihtiyaç durumunda dış ağlara açılmasını mümkün kılar.

Docker Network Türleri

Docker, çeşitli network sürücüleri ile farklı kullanım senaryolarına uygun çözümler sunar. Aşağıda en çok kullanılan Docker network türleri özetlenmiştir:

  • bridge: Varsayılan network türüdür. Konteynerler aynı host üzerindeyse, bridge ağı üzerinden iletişim kurabilir.
  • host: Konteyner, ana makinedeki ağ arabirimini doğrudan kullanır.
  • none: Konteynerin herhangi bir ağa bağlanmasını engeller. Tamamen izole eder.
  • overlay: Çoklu host ortamlarında konteynerlerin birbirleriyle haberleşmesini sağlayan bir ağ tipidir.

Docker Network Oluşturma ve Konfigürasyonu

Docker'da yeni bir ağ oluşturmak için aşağıdaki komutu kullanabilirsiniz. Örneğin, özel bir bridge ağı yaratmak için:

docker network create --driver bridge benim_agim

Mevcut ağları listelemek için ise:

docker network ls

Bir konteyneri oluşturulmuş bir ağa dahil etmek için:

docker run -d --name web --network benim_agim nginx

Konteynerler İçinde Ağ Konfigürasyonu

Konteynerler arasında DNS ile erişim mümkündür. Örneğin, aynı ağda yer alan iki konteyneri birbirinin ismiyle çağırabilirsiniz:

docker run -d --name app --network benim_agim busybox sleep 3600
docker exec -it app ping web

Bu yapı sayesinde mikroservisler arasında sade ve güvenli iletişim sağlanır.

Sonuç: Doğru Ağ Tasarımı ile Güvenlik ve Esneklik

Docker Network temelleri ve konfigürasyonu, konteyner tabanlı altyapıların performansı ve güvenliği için kritik öneme sahiptir. Doğru şekilde yapılandırılmış networkler, hem mimariyi sadeleştirir hem de uygulamalarınızın istikrarını artırır. Özellikle ölçeklenebilir ve modüler uygulama geliştirenler için Docker Network yapısını iyi bilmek büyük avantaj sağlar.