Ulaşım
- Adres:Batıkent Mh. 8910 Sk. 6. Etap 1H No: 18 Yeni Toki Eyyübiye / Şanlıurfa (Yeni Alım Satım Karşısı)
- Telefon:0 (545) 528 88 93
- eMail: info@alestaweb.com
Docker Compose'da "network has active endpoints" veya "network not found" hatası mı alıyorsunuz? Container'lar birbirleriyle konuşamıyor mu? Alesta Web olarak Docker Compose network hatalarını 2025 için güncel çözümlerle açıklıyoruz. Hadi başlayalım!
alestaweb.com deneyimlerimize göre, Docker Compose'da en yaygın 5 network hatası var. Her birini çözümüyle birlikte açıklayacağız!
Hata mesajında network, endpoint, veya connection refused görüyorsanız doğru yerdesiniz! Alesta Web olarak bu hataları sayısız kez çözdük.
ERROR: network my_network id xxx has active endpoints Error response from daemon: error while removing network: network my_network has active endpoints
Docker Compose network'ü silmeye çalışıyor ama hala çalışan container'lar o network'e bağlı (containers still connected to the network). Alesta Web testlerimizde bu hatayı en çok `docker-compose down` sonrası görüyoruz.
# Önce tüm container'ları durdur (Stop all containers) docker-compose down # Eğer hata devam ederse (If error persists): docker-compose down --remove-orphans # Nuclear option (tüm container'ları sil): docker stop $(docker ps -aq) docker rm $(docker ps -aq)
Alesta Web İpucu: Bu komut tüm container'ları temizler (cleans all containers)!
# Network'e bağlı container'ları bul (Find connected containers) docker network inspect my_network # Container'ları durdur ve network'ü sil: docker network rm my_network # Eğer "has active endpoints" hatası alırsanız: docker network disconnect -f my_network container_name docker network rm my_network
# Container ve network'leri yeniden oluştur (Recreate): docker-compose up --force-recreate # Daha agresif (More aggressive): docker-compose up --force-recreate --remove-orphans
Bu, alestaweb.com olarak en çok önerdiğimiz yöntem (our most recommended method)!
ERROR: Network my_app_default declared as external, but could not be found network my_network not found
Docker Compose bir network bekliyor ama o network yok (network doesn't exist). Genelde `external: true` kullanırken olur.
# Network'ü oluştur (Create network): docker network create my_network # Sonra compose'u çalıştır: docker-compose up
networks:
my_network:
external: true # Network yoksa hata!
networks:
my_network:
driver: bridge # Docker otomatik oluşturacak
Alesta Web deneyimi: external: true sadece network zaten varsa kullan!
docker-compose up --force-recreate
Docker network'leri otomatik yeniden oluşturur (automatically recreates networks).
curl: (6) Could not resolve host: my-service Connection refused to my-service:8080 getaddrinfo ENOTFOUND my-service
Container'lar aynı network'te değil veya yanlış hostname kullanıyorsunuz (containers not on same network or wrong hostname). alestaweb.com deneyimlerimize göre en yaygın yeni başlayan hatası!
# Container içinde curl http://localhost:8080 # ÇALIŞMAZ!
# docker-compose.yml'deki service ismini kullan curl http://my-service:8080 # ÇALIŞIR!
Alesta Web İpucu: Container'lar arası iletişimde service name kullanın, localhost değil! (use service name, not localhost!)
version: '3.8'
services:
web:
image: nginx
networks:
- my_network # Aynı network
api:
image: node:20
networks:
- my_network # Aynı network
db:
image: postgres
networks:
- my_network # Aynı network
networks:
my_network:
driver: bridge
Tüm servisler aynı network'te olmalı (all services must be on the same network)!
# Hangi container hangi network'te? docker network inspect my_app_default # Container içinden test et: docker exec -it container_name ping my-service
ERROR: for web Cannot start service web: driver failed programming external connectivity: Bind for 0.0.0.0:8080 failed: port is already allocated
Host'ta 8080 portu zaten kullanılıyor (port 8080 already in use on host). Alesta Web olarak bu hatayı development ortamlarında çok görüyoruz!
lsof -i :8080 # Veya (or): netstat -tulpn | grep 8080
netstat -ano | findstr :8080
Process'i durdur veya farklı port kullan (stop the process or use different port).
services:
web:
image: nginx
ports:
- "8081:80" # 8080 yerine 8081 kullan (use 8081 instead of 8080)
services:
web:
image: nginx
expose:
- "80" # Sadece container'lar arası (only between containers)
# ports yok! (no ports exposed to host)
alestaweb.com tavsiyesi: Backend servislerde host port'a gerek yok!
Got permission denied while trying to connect to the Docker daemon socket Permission denied connecting to /var/run/docker.sock
Kullanıcınız Docker socket'ine erişemiyor (user cannot access Docker socket). Linux'ta yaygın hata.
# Kullanıcıyı docker grubuna ekle: sudo usermod -aG docker $USER # Logout/login yap veya: newgrp docker # Test et: docker ps
Alesta Web önerisi: Bu kalıcı çözüm (permanent solution)!
sudo docker-compose up
⚠️ Geçici çözüm, her seferinde sudo gerekecek (temporary, needs sudo every time).
Alesta Web olarak önerilerimiz:
version: '3.8'
services:
web:
networks:
- frontend
api:
networks:
- frontend
- backend
db:
networks:
- backend
networks:
frontend:
driver: bridge
backend:
driver: bridge
Servisleri mantıksal olarak ayır (separate services logically)!
# API container'ından DB'ye bağlan:
DATABASE_URL=postgresql://db:5432/mydb
# Web'den API'ye istek:
fetch('http://api:3000/users')
Service isimleri otomatik DNS olarak çalışır (service names work as DNS automatically)!
# Compose dosyanızın son halini görün: docker-compose config # Network ayarlarını kontrol edin
alestaweb.com ipucu: Bu komut "gold"! Tüm varsayılan ayarları gösterir (shows all default settings).
# Kullanılmayan network'leri sil (Remove unused networks): docker network prune # Kullanılmayan tüm kaynakları sil (Remove all unused resources): docker system prune # Agresif temizlik (Aggressive cleanup): docker system prune -a --volumes
# Container loglarını izle (Watch container logs): docker-compose logs -f # Specific service: docker-compose logs -f web # Network detaylarını incele (Inspect network details): docker network inspect myapp_default
Bu makalede kullanılan bilgiler aşağıdaki güvenilir kaynaklardan alınmıştır:
Alesta Web olarak tüm çözümleri test ettik ve doğruladık.
Alesta Web olarak Docker Compose network hatalarının 5 ana türünü ve çözümlerini açıkladık. Bu rehberi takip ederek sorunlarınızı kolayca çözebilirsiniz!
Hızlı Hatırlatma / Quick Reminder:
docker-compose down --remove-orphansdocker-compose up --force-recreatelsof -i :PORT ile kontrol etsudo usermod -aG docker $USERDocker Compose kullanırken docker-compose config komutunu sık sık çalıştırın. Final konfigürasyonu gösterir ve hataları erken yakalamanızı sağlar (shows final configuration and helps catch errors early)!
Faydalı Linkler / Useful Links:
Docker Compose sorunlarınız devam ediyorsa, alestaweb.com üzerinden bizimle iletişime geçebilirsiniz!
© 2025 AlestaWeb - Tüm hakları saklıdır. / All rights reserved.