Docker arka plan programı günlüğü nerede?


344

Docker arka plan programı günlüğü nerede? Garip bir şekilde bunun cevabını man, StackOverflow veya Docker Docs aracılığıyla bulamıyor. Not Doder kapsayıcısı STDOUT'u istemiyorum, ancak istemci ve kapsayıcı arasındaki iletişimi daemon / proxy aracılığıyla gidermek için daemon günlüğü.



Zaten birkaç yıl gibi göründüğünden, lider olarak bir cevap seçmelisiniz.
Light.G

Yanıtlar:


601

İşletim sisteminize bağlıdır. İşte birkaç İşletim Sistemi için komutlar içeren birkaç konum:

  • Ubuntu (eski start up kullanarak) - /var/log/upstart/docker.log
  • Ubuntu (systemd kullanan yeni) - sudo journalctl -fu docker.service
  • Amazon Linux AMI - /var/log/docker
  • Boot2Docker - /var/log/docker.log
  • Debian GNU / Linux - /var/log/daemon.log
  • CentOS - /var/log/daemon.log | grep docker
  • CoreOS - journalctl -u docker.service
  • Fedora - journalctl -u docker.service
  • Red Hat Kurumsal Linux Sunucusu - /var/log/messages | grep docker
  • OpenSuSE - journalctl -u docker.service
  • OSX - ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/d‌​ocker.log
  • Pencereler - Get-EventLog -LogName Application -Source Docker -After (Get-Date).AddMinutes(-5) | Sort-Object Time, burada belirtildiği gibi .

Sistem günlüğü sürücüsünü daemon modunda kullanırsanız, STDOUT günlükleriniz de burada olur.
Ganesh Hegde

Bunun 1.13OSX konumunu değiştirdiğine inanıyorum , ancak bununla ilgili herhangi bir belge bulamıyorum.
mkobit

1
@Thomasleveil bağlantısı artık çalışmıyor. Eşdeğer bağın burada olacağını düşünüyorum docs.docker.com/engine/reference/commandline/dockerd
Adam Mazzarella

liman işçisi makine : Kullanın docker-machine ssh $host tail -f /var/lib/boot2docker/log/docker.log. (liman işçisi makine sürümü 0.16.1, yapı cce350d7)
Claudio

94

İşletim sisteminiz kullanıyorsa systemd, docker daemon log'unu aşağıdakilerle görüntüleyebilirsiniz:

sudo journalctl -fu docker.service

Bu, docker konteynerlerinin çıktısını da gösterir ... Bunları sadece dockerdgünlükleri göstermek için filtrelemenin bir yolu var mı?
16:10

3
@TheDoctorWhat, bunun nedeni büyük olasılıkla journaldgünlük sürücünüz olarak ayarladığınızdır. Gönderen github.com/docker/docker/issues/23339#issuecomment-224275072 , sen kaplar dışarı doldurup kullanarak sadece Daemon günlükleri tutmak filtre journalctl -fu docker _TRANSPORT=stdout + OBJECT_EXE=docker(ince burada çalışır)
Ciro Costa

22

CentOS7 kullanıldığında, günlükler komut kullanılarak kullanılabilir journalctl -u docker. Ayrı ayrı cevaplamak, çünkü @ sabin'in cevabı CentOS'un eski sürümleri için doğru olabilir, ancak benim için doğru değildi.

systemd'nin günlük adı verilen kendi günlük sistemi vardır. Docker arka plan programı günlükleri journalctl -u docker kullanılarak görüntülenebilir

Ref: https://docs.docker.com/engine/admin/configuring/


13

Ortamımda (mac 17.07 için docker), adresinde günlük dosyası yok ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/d‌​ocker.log

Bunun yerine günlük dosyasını aşağıdaki gibi bulabilirim.

  1. VM'ye girin.

    $ screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
    veya
    $ screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

  2. Günlük dosyasını kontrol et

    / # tail -f /var/log/docker.log


11

For Docker Mac Yerli (ekstra VirtualBox olmadan Docker tesisin işletilmesi Boot2Docker veya liman işçisi-makinesi olmadan, - ben diğerleri üzerinde öneriyoruz), tüm cevapları benim için çalış etmedin . Ancak Docker belgeleri neyse ki kurtarmaya geldi.

Docker daemon günlüklerini komut satırında görmek istiyorsanız, şunu yazın:

syslog -k Sender Docker

Alternatif olarak Mac OS Sierra'dan , yeni tasarlanmış Mac Konsol Uygulamasını kullanabilirsiniz (burada "Terminal" uygulaması ile karıştırmayın, Konsol Uygulaması simgesi oldukça benzer görünüyor - Bunu aşağıdaki Launchpad ile buldum "Diğerleri". . "). Burada yeni Mac OS Sierra Konsol Uygulaması'nın genel kullanımını açıklayan ve henüz resmi Docker belgelerine girmeyen bir makale var .

Konsol Uygulaması içinde sadece system.log dosyasını seçin ve Dockerarama çubuğuna yazın. Bu kadar. Şimdi Docker ile ilgili tüm günlükleri görmelisiniz.


9

Mac için Docker (Beta)

~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/d‌​ocker.log


7

Docker Toolbox'lı Mac için, önce VM'ye ssh yazın docker-machine ssh %VM-NAME%ve ardından/var/log/docker.log



3

Ayrıca günlükleri bu komutla görebilirsiniz:

docker service ps --no-trunc {serviceName}

-1

Windows'da docker daemon log'unu bulmanın yollarını ekleyin:

Deneyin

Windows ve Mac OSX'te docker makinesini kullanırken, arka plan programı sanal bir makinenin içinde çalışır.

İlk olarak, aktif Docker makinenizi bulun.

docker-machine ls Çıktıdaki NAME sütununun altında etkin docker makinesinin adını bulun.

Docker arka plan programı günlük dosyasını analiz için yerel dizininize kopyalayabilirsiniz:

docker-machine scp varsayılanı: /var/log/docker.log ./ Varsayılan olarak, docker makinenizin etkin adıdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.