%50 indirim tüm planlar, sınırlı süre. Başlangıç ​​tarihi: $2.48/mo
9 dakika kaldı
Geliştirici Araçları ve DevOps

Docker Günlükleri Oluşturmak İçin Kolay Kılavuz: Nasıl Kontrol Edilir ve Yönetilir

Ada Lovegood By Ada Lovegood 9 dakikalık okuma Güncellenme tarihi: 23 Şubat 2025
Liman işçisi günlükleri

Docker uygulamalarının perde arkasında ne yaptığını bilmek ister misiniz? Günlükler olarak bilinen, konteynerlerinizin yaptıkları her hareketi gösteren gizli pencere hakkında daha fazla bilgi edelim. Günlükler sorunları çözmek için son derece faydalıdır. Ancak başlamadan önce Docker ve Docker Compose'un ne olduğuna hızlıca bir göz atalım.

Docker, uygulamalarınızı küçük konteynerler halinde paketlemenize ve çoğu işletim sisteminde herhangi bir bağımlılık olmadan çalıştırmanıza olanak tanır. Bu, uygulamalarınızı Containers adı verilen ve her yerde aynı şekilde çalışabilen küçük kutulara koymak gibidir. Container'lar hakkında bilgi sahibi olmak, Docker compose hakkında bilgi edinmenin önemli bir önkoşuludur. Bu yüzden öncelikle blogumuzu okumanızı tavsiye ederim. Konteynerleştirmenin faydaları.

Docker Compose, Docker ile birlikte gelir ve hizmetlerini, ağlarını ve depolamalarını zincirleyerek birden fazla kapsayıcılı uygulamanın geliştirilmesini basitleştirir. Docker konteyner günlükleri ve Docker Compose günlük kaydı, geliştiricilerin her konteynerin ne yaptığını görmesine yardımcı olur.

Peki Docker Compose Logs'u merak ediyor musunuz? Doğru yerdesiniz. Bu blog, Docker Compose günlüklerinin temellerini açıklayacak ve daha gelişmiş ayrıntıları kapsayacaktır. Projeleriniz için Docker Compose'tan en iyi şekilde nasıl yararlanabileceğinizi öğrenin.

Docker Compose Log'ların Önemi

Bir geliştiricinin Docker ile bir uygulama başlattığını ancak Docker günlüklerini ayarlamayı atladığını düşünün. İlk başta her şey yolunda görünüyor. Ancak çok geçmeden kullanıcılar hatalar bulur ve uygulama yavaşlar. Docker günlükleri olmadan geliştirici, Docker konteynerlerinde neyin yanlış gittiğini göremez. Docker Compose logları bu konteynerlerin detaylı kaydı gibidir. Olan bitenin her ayrıntısını kaydederler; bu, daha sonra sorunların bulunması ve çözülmesi açısından önemlidir.

Bir Geliştirici veya Sistem Yöneticisi olarak çok zincirli uygulamaların içinde ve arasında neler olduğunu anlamalısınız. Docker Compose günlüklerinin kullanışlı bir araç görevi gördüğü yer burasıdır. Peki bu günlükler neden gerekli?

  • Sorun Giderme ve Hata Ayıklama

Bir uygulama düzgün çalışmadığında veya hatalarla karşılaştığında liman işçisi günlüklerini kontrol edin. Docker günlükleri, sorunu izlemek için bakabileceğiniz ilk kaynaklardır. Geliştiriciler, docker günlüklerini inceleyerek ister koddaki bir hata, ister yanlış yapılandırma veya kaynak sorunları olsun, sorunların temel nedenini ve kaynağını tam olarak belirleyebilir.

  • Uygulama Sağlığının İzlenmesi

Uygulama günlüklerinin düzenli olarak izlenmesi, hizmetlerin genel durumunun anlaşılmasına yardımcı olur. Günlükler, tekrarlanan hatalar ve yavaş tepkiler gibi erken uyarı işaretlerini ortaya çıkarabilir. Bu kalıpları erken gözlemlemek, gelecekte olası sorunları önleyebilir.

  • Denetim ve Uyumluluk

Belirli standartlara uyması gereken uygulamalar için docker günlükleri, uygulamanın yönergelere uyup uymadığını gösteren ilk kanıttır. Bu günlükler aynı zamanda yetkili veya yetkisiz faaliyetlerin izlenmesinde de önemli bir rol oynar.

  • Optimizasyon

Günlükler, performans verileri sağlayarak yazılım optimizasyonu için değerli kaynaklardır. Örneğin geliştiriciler yavaş çalışan sorguları, verimsiz kod yollarını veya az kullanılan kaynakları tespit edebilir.

Docker Tarifi Hazırlama: Web Sunucusunu Dağıtma

Bu bölümde birlikte Docker tarifi oluşturmayı anlatacağız. Docker Compose loglarıyla yolculuğumuza başlamak için öncelikle bir şeyler oluşturmamız gerekiyor. Bu amaçla bir web sunucusu konuşlandıralım. Docker dosyası oluşturmak için çalıştırmanız yeterlidir nano Docker dosyası VPS'nizde aşağıdaki içerikleri içeren istediğiniz klasöre yerleştirin ve kaydedin:

 

FROM nginx:alpine
RUN rm /usr/share/nginx/html/index.html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

Peki bu kodun her satırı ne işe yarıyor?

  • Hafif bir tabanla başlıyoruz, nginx:alp.
  • Daha sonra Nginx'in varsayılan karşılama sayfasını temizliyoruz.
  • Daha sonra web sunucusunun portta dinleme yaptığından emin oluyoruz. 80.
  • Son olarak Nginx sunucusunu çalıştırıyoruz. CMD.

Artık Dockerfile’ımız hazır, bir sonraki adım olan Docker Compose dosyasını oluşturmaya geçiyoruz. İşte yapısı docker-compose.yml dosya:

version: '3.8'
services:
web:
build: .
ports:
- "8080:80"
volumes:
- ./index.html:/usr/share/nginx/html/index.html

Her bir parçayı tam olarak anlamak için parçalayalım:

  • sürümünü kullanıyoruz 3.8.
  • Bir sonraki satırda hizmetimize “adını veriyoruz”“.
  • Daha sonra Docker'a web sunucumuzu mevcut klasörden oluşturması talimatını veriyoruz.
  • Web sunucumuzun bağlantı kurmasını sağlamak için ana makinemizdeki 8080 numaralı bağlantı noktasını konteynerimizin 80 numaralı bağlantı noktasına bağlarız.
  • Son olarak birimlerin konfigürasyon haritaları index.html ana diskten konteynere. Daha sonra bir oluşturabilirsiniz. index.html İstediğiniz içeriği içeren bir dosya oluşturun ve onu istediğiniz yere yerleştirin. Docker dosyası Ve docker-compose.yml dosyalar mevcut.

Artık Docker Container’ımızı Docker Compose ile çalıştırmanın zamanı geldi. Basitçe koşuyoruz liman işçisi oluşturma.

Docker konteynerini Docker Compose ile çalıştırın

Bir kez çalıştırdığınızda liman işçisi oluşturma komutunu verdiğinizde Docker gerekli görselleri internetten indirecek ve bunları yapılandırma dosyalarımızda anlatıldığı şekilde yapılandıracaktır.

Web sunucumuzun çalışır durumda olup olmadığını kontrol etmek için web tarayıcınızı açın, VPS IP adresinizi yazın ve 8080 numaralı bağlantı noktasına erişim isteyin.

Docker'lı web sayfası

Yan not olarak şunları kullanabilirsiniz: liman işçisi-oluşturma -d Konteyneri arka planda çalıştırmak için.

Docker Compose ile Günlüklere Erişim

Artık web sunucumuz hazır, çalışır durumda ve çalışıyor. Zaten günlükler oluşturuyor ve bu bilgileri daha sonra kullanmak üzere saklıyor. Docker oluşturma günlüklerinize erişmek, sorun giderme ve izleme için çok önemlidir. Peki bu günlükleri nasıl okuyabiliriz? burası liman işçisi tarafından oluşturulan günlükler kullanışlı oluyor. Yapılandırmanın bulunduğu klasörde olduğunuzdan emin olun ve bu komutu çalıştırın.

Docker Compose ile Günlüklere Erişim

Bazen günlüklerin oluşturulduğu sırada canlı sürümünü görmek isteyebilirsiniz. Önceki komutun sonuna -f ekleyip çalıştırmanız yeterlidir. docker-oluşturma günlükleri -f.

Docker Compose ile Günlüklere Erişim

Bazı Docker tabanlı uygulamalar, günlüklerinde size zaman damgaları sağlamayabilir. Bu nedenle kullanabilirsiniz liman işçisi-oluşturma günlükleri -t Günlüğün her satırına kayıtlı bir süre eklemek için.

Docker Compose ile Günlüklere Erişim

Docker Logs ayrıca en son girişleri de görüntüleyebilir. Bunu başarmak için şunu kullanın: docker-compose günlükleri –tail 10 En son 10 günlük girişini görüntülemek için. Docker, günlük kuyruğunu oluşturur ve benzer şekilde docker günlük kuyruğu, tüm günlük geçmişini kaydırmadan son etkinlikleri hızlı bir şekilde kontrol etmek istediğinizde özellikle kullanışlıdır.

docker compose ile günlüklere erişme

Docker Compose'u kullanmanın temel amacı, çok kapsayıcılı uygulamalar oluşturmaktır. Bu nedenle istediğiniz hizmete ilişkin belirli günlükleri okumanız gerekebilir. Bunu yapmak için şunu kullanın: liman işçisi-oluşturma günlükleri -f SERVICE, değiştirmeyi hatırlayarak HİZMET gerçek hizmet adınızla birlikte.

docker ile günlüklere erişme

Docker Günlüğü

Docker ekosistemi, özellikle büyük ortamlarda, birleşik uygulamalar için daha karmaşık hale gelebilir. Zaten bildiğimiz gibi her konteyner günlükler oluşturur. Bu nedenle Günlük Sürücüsü olarak bilinen bir mekanizma, günlüklerin alınmasından, iletilmesinden ve saklanmasından sorumludur. Varsayılan olarak Docker, Günlük Sürücüsü için JSON dosyalarını kullanır, ancak aynı zamanda her birinin artıları ve eksileri olan diğer çeşitli sürücüleri de destekler.

Herkes, günlüklerin sorun giderme ve sistem performansını artırma da dahil olmak üzere çeşitli alanlarda önemli olduğu konusunda hemfikirdir. Aşağıda konteyner günlüklerini kullanmanın iki ana yönünü ele alacağız:

  • İzleme: Logs’un birincil amacı izlemedir. Genellikle konteynere alınmış uygulamalarımızın genel durumunu ortaya koyarlar.
  • Sorun giderme: Sorun olması durumunda günlükler uygulama hatalarını tespit etmemize yardımcı olur.

Liman işçisi günlükleri ve liman işçisi oluşturma günlükleri sürekli olarak oluşturulduğundan, tüm VPS depolama alanını doldurabilirler. Bu nedenle, Günlük Döndürme Politikası adı verilen disk alanını yönetmek için bir stratejiye ihtiyacımız var. Bu politikayı oluşturmak ve kullanmak için docker-compose.yml dosyayı açın ve açın. Ardından, aşağıdaki yapılandırmaya sahip bir günlük kaydı bölümü ekleyin:

version: '3.8'
services:
web:
build: .
ports:
- "8080:80"
volumes:
- ./index.htm:/usr/share/nginx/html/index.htm
logging:
driver: json-file
options:
max-size: "200k"
max-file: "10"

Sürekli ayarlayabilirsiniz maksimum boyut Ve maksimum dosya ihtiyaçlarınıza göre.

Docker Günlükleri Teslimat Modelleri

Mühendisler, daha gelişmiş ortamlarda Syslog, fluentd ve diğerleri gibi varsayılan JSON sürücülerinden farklı bir günlük kaydı modelini tercih edebilir. Ancak, JSON dosyası sürücüsünün çoğu günlük kaydı senaryosu için uygun olduğunu ve varsayılan moddan sapmaya gerek olmayabileceğini unutmamak önemlidir.

Uygulamanızın mimarisine veya organizasyonel gereksinimlerine bağlı olarak Günlük Toplayıcılar olarak bilinen merkezi günlük kaydı çözümlerini kullanmak zorunda kalabilirsiniz. Bu hizmetler dahil Elasticsearch, Logstash, Kibana vb. çeşitli kaynaklardan günlükleri almak ve bunları tek bir merkezi konumda birleştirmek, depolamak ve analiz etmek için tasarlanmıştır.

Bunun tersine, günlüklerinizi daha uygun maliyetli depolama çözümleri kullanarak saklamalısınız. VPS'nizin yüksek hızlı ve pahalı depolama kullandığı senaryoyu düşünün; Yalnızca gelecekte başvurmak üzere ihtiyaç duyabileceğiniz günlükleri depolamak için bu tür premium kaynakları kullanmak ekonomik olmayabilir.

Her birinin avantajları ve dezavantajları olan çok sayıda kayıt modeli mevcuttur. Her modeli dikkatlice değerlendirmek ve özel ihtiyaçlarınıza göre bir tane seçmek çok önemlidir.

Linux VPS Barındırma

Web sitenizi veya uzak masaüstünüzü barındırmak için kendinize en ucuz fiyata ekonomik veya premium Linux VPS edinin. VPS, daha fazla verimlilik için Linux KVM üzerinde çalışır ve daha yüksek hız için NVMe SSD depolama ile güçlü donanım üzerinde çalışır.

Devamını oku

Çözüm

Docker Compose günlüklerini anlamak çok önemlidir. Docker uygulamalarınızı iyi bir şekilde yönetmenize ve hata ayıklamanıza yardımcı olurlar. Bu günlüklere erişmeyi ve bunları izlemeyi öğrenmek, sorun çözmeyi geliştirir ve uygulamanızın performansını ve güvenliğini artırır. Sistemleri geliştirirken veya yönetirken Docker Compose günlüklerini kullanmak çok önemlidir. Konteyner yönetiminizin etkili olmasını sağlarlar.

SSS

Docker Compose günlüklerini zamana göre nasıl filtreleyebilirim?

Docker Compose, günlükleri zamana göre filtrelemek için doğrudan bir yöntem sunmaz. Ancak, desen eşleştirmesi için günlükleri grep aracılığıyla yönlendirerek filtreleyebilirsiniz. Örneğin şunları kullanabilirsiniz: docker-compose logs | grep "2023-04-06", "2023-04-06"yı aradığınız belirli tarih veya saat düzeniyle değiştirin.

Docker Compose ile başlatılan konteynerler nasıl durdurulur?

docker-compose.yml dosyasını içeren dizine gidin ve docker-compose down komutunu çalıştırın.

Günlük dosyaları manuel olarak nasıl kaldırılır?

docker-compose.yml dosyanızda günlük döndürmeyi yapılandırmak yerine, Docker JSON günlük dosyalarını /var/lib/docker/containers/<container_id>/ konumundan manuel olarak kaldırabilirsiniz. Bunu yapmadan önce Docker konteyner kimliğini docker ps -a ile tanımlamanız gerekir.

Docker günlüklerini takip edebilir misiniz? 

Evet, yapabilirsin. Bunun için -f veya –follow seçeneğiyle birlikte docker logs komutunu kullanmalısınız. Bu sizin için Docker günlüklerini kuyruklayacaktır.

Paylaşmak

Blogdan daha fazlası

Okumaya devam edin.

Makalenin başlığını ve koyu mavi bir arka plan önünde Cloudzy logosunu taşıyan, parlak neon camgöbeği tel çerçeve kubbesiyle korunan metalik bir kap.
Geliştirici Araçları ve DevOps

2026'da Kaçınılması Gereken En Önemli Docker Güvenliği Hataları

Docker'ı görünür bir sorun yaşamadan aylarca üretimde çalıştırabilirsiniz. Kapsayıcılar başlıyor, uygulamalar yanıt veriyor, hiçbir şey bozulmuyor. Daha sonra açığa çıkan bir bağlantı noktası veya yanlış yapılandırılmış bir izin oluşturulur

Rexa CyrusRexa Cyrus 15 dakika okuma
'Portainer vs Yacht: Hangi Docker Kullanıcı Arayüzünü Seçmelisiniz' metni ve Cloudzy logosunun yanında Docker konteynerlerini temsil eden 3 boyutlu parlak mavi küp yapısı.
Geliştirici Araçları ve DevOps

Portainer vs Yacht: 2026'da Hangi Docker Kullanıcı Arayüzünü Seçmelisiniz?

Docker kapsayıcılarını CLI aracılığıyla yönetmek basit kurulumlar için etkilidir ancak ölçeklendirmesi zayıftır. Konteyner sayıları arttıkça durumları, günlükleri ve güncellemeleri manuel olarak izlemek hata haline gelir

Rexa CyrusRexa Cyrus 13 dakikalık okuma
Sürekli Entegrasyon Araçları
Geliştirici Araçları ve DevOps

2026'da DevOps İş Akışlarınızı Optimize Etmek için En İyi CI/CD Araçları

  Yazılım geliştirme ortamı her zamankinden daha hızlı gelişiyor. Bu hızlı büyümenin gerisinde kalmak istemiyorsanız DevOps metodolojilerini ve Agile'ı benimsemelisiniz.

Ada LovegoodAda Lovegood 11 dakikalık okuma

Dağıtıma hazır mısınız? Aylık 2,48dan başlayan fiyatlarla.

Bağımsız bulut, 2008'den beri. AMD EPYC, NVMe, 40 Gbps. 14 gün içinde para iadesi.