Çakışan alt ağlar ve/veya Docker varsayılan alt ağ boyutu nasıl değiştirilir?

docker compose kullanılarak yeni bir konteyner oluşturulduktan sonra halihazırda çalışan birkaç hizmet artık alt ağlardan kullanılamıyordu, ayrıca split tunnel olarak bağlantı sağlanan makineye de erişim yoktu.

Ufak bir kontrol yaptığımda hali hazırda çalışan ağların fazlasıyla geniş bir aralıktan ip aldığını gördüm /16 ki bu gerçekten geniş bir ip aralığıdır.

Bu ip adreslerine bakmak için aşağıdaki komutu kullandım.

docker network inspect $(docker network ls | awk '$3 == "bridge" { print $1}') | jq -r '.[] | .Name + " " + .IPAM.Config[0].Subnet' -

Bunu önlemek için, /etc/docker/daemon.json dosyasında kullanılacak ağ alanlarını belirtebilirsiniz, böylece kendi ağlarınızla çakışma olmaz.

{
  "default-address-pools": [
    {
      "base": "172.17.0.0/16",
      "size": 24
    },
    {
      "base": "192.168.0.0/16",
      "size": 24
    }
  ]
}

Bu süreçten hemen sonra docker servislerini yeniden başlatmanız gerektiğini unutmayınız.

13 Likes

Ellerine sağlık, Mertcan Hocam.

1 Like

Ellerinize sağlık Mertcan bey.

1 Like

Elinize sağlık, Bir ekleme de ben yapayım container’lara ait dosyaların /var/lib/docker/ pathi ayrı bir disk olarak değiştirmek isterseniz data-root parametresi ile diski vermek yeterli. Bu şekilde root diskinden ayrılmış olunur.

{
  "data-root": "/data/docker/",
  "default-address-pools": [
    {
      "base": "192.168.56.0/21",
      "size": 28
    }
  ]
}
5 Likes

Ellerine sağlık, @mertcangokgoz

1 Like