Rumah Operasi dan penyelenggaraan Docker Docker menyemak di mana fail log berada

Docker menyemak di mana fail log berada

May 13, 2023 pm 02:12 PM

Docker ialah platform kontena sumber terbuka yang sangat popular, yang menyediakan penyelesaian yang lebih cekap, boleh dipercayai dan selamat untuk penggunaan dan pengurusan aplikasi. Walau bagaimanapun, apabila menggunakan Docker untuk penempatan dan operasi serta penyelenggaraan, kami sering perlu menanyakan fail log semasa proses menjalankan bekas untuk lebih memahami status sistem berjalan, penyelesaian masalah, operasi dan penyahpepijatan penyelenggaraan, dsb. Jadi, di manakah fail log dalam Docker disimpan? Artikel ini akan memberi anda pengenalan terperinci kepada kaedah Docker untuk melihat fail log dan langkah berjaga-jaga yang berkaitan.

1. Lokasi storan lalai bagi fail log Docker

Dalam Docker, setiap bekas akan menjana fail log yang sepadan. Fail log ini disimpan dalam sistem fail bekas secara lalai. Khususnya, Docker mengubah hala output standard kontena (stdout) dan ralat standard (stderr) kepada output standard kontena dan fail ralat standard secara lalai. Fail log ini biasanya terletak dalam direktori berikut:

/var/lib/docker/containers/$CONTAINER_ID/$CONTAINER_ID-json.log

di mana $CONTAINER_ID mewakili pengecam unik bagi bekas .

Mengenai penyimpanan log Docker, terdapat beberapa perkara penting:

  1. Fail log disimpan dalam bekas secara lalai, bukan pada hos Ini kerana Docker menggunakan virtualisasi kontena secara lalai Untuk menjalankan aplikasi dengan cara yang standard, bekas ialah persekitaran terpencil yang merangkumi sistem fail dan ruang prosesnya sendiri.
  2. Fail log biasanya disimpan dalam format JSON Fail ini termasuk cap waktu setiap baris log, tahap log, ID kontena, kandungan log dan maklumat lain.
  3. Fail log tidak dibersihkan secara automatik secara lalai, jadi jika kami tidak memadamkan fail ini secara aktif, ia akan terus menduduki ruang cakera bekas, menyebabkan ruang cakera berkurangan secara beransur-ansur semasa bekas sedang berjalan.

2. Gunakan Docker CLI untuk melihat fail log kontena

Dalam proses menggunakan Docker untuk pengurusan kontena, kami boleh menggunakan alat baris arahan Docker CLI untuk melihat fail log kontena . Di bawah, kami akan memperkenalkan beberapa arahan CLI Docker asas untuk melaksanakan fungsi melihat log kontena.

  1. log buruh pelabuhan [PILIHAN] BEKAS

Fungsi arahan ini adalah untuk mencetak semua maklumat log bekas yang ditentukan. Antaranya, pilihan PILIHAN boleh menjadi:

-a, --semua: paparan maklumat log semua bekas

-t, --cap masa: paparan cap masa

-f , --follow: Contohnya, kaedah tailf digunakan untuk mengeluarkan log, iaitu log paparan sentiasa disegarkan

--tail=: Bilangan baris log yang ditentukan adalah output bermula dari penghujung daripada fail log. Lalai ialah semua log ($ docker logs -tail all)

--since=: Log output direkodkan selepas masa yang ditentukan, seperti "2019-01-01", atau cap waktu

--until=: Log keluaran direkodkan sebelum masa yang ditentukan Penggunaan log khusus

adalah seperti berikut:

$ docker log CONTAINER_ID

Arahan ini akan memaparkan semua maklumat log bekas yang ditentukan, dengan CONTAINER_ID ialah pengecam unik bekas itu. Jika anda ingin memaparkan N baris terakhir maklumat log bekas, anda boleh menggunakan arahan berikut:

$ log docker --tail N CONTAINER_ID

Jika kita perlu memantau yang sebenar -output log masa bagi bekas pada bila-bila masa, kita boleh menambah pilihan -f Atas:

$ log docker -f CONTAINER_ID

  1. docker inspect [OPTIONS] CONTAINER

Fungsi arahan ini adalah untuk mendapatkan bekas yang ditentukan Maklumat terperinci, termasuk laluan fail log kontena, status berjalan, alamat IP, pemetaan port dan maklumat lain yang berkaitan. Melalui arahan ini, kita boleh mendapatkan laluan storan lalai bagi fail log bekas, seperti yang ditunjukkan di bawah:

$ docker inspect --format='{{.LogPath}}' CONTAINER_ID

In Selain melihat bekas Selain laluan fail log, arahan ini juga boleh melihat maklumat lain yang berkaitan Penggunaan khusus adalah seperti berikut:

$ docker inspect CONTAINER_ID

3. alatan pihak untuk melihat log Docker

Selain alat CLI Docker, anda juga boleh menggunakan alatan pihak ketiga untuk melihat log Docker dengan lebih mudah. Di sini kami memperkenalkan dua alat tontonan log Docker yang popular:

  1. Karang Docker

Karang Docker ialah alat orkestrasi kontena yang disediakan secara rasmi oleh Docker, menyediakan karang docker Fail yang boleh dikonfigurasikan. yml untuk menentukan cara aplikasi berbilang bekas digubah dan dijalankan. Menggunakan Docker Compose untuk penempatan memudahkan anda memulakan berbilang bekas pada satu masa dan mengumpul serta mengurus log pada masa yang sama.

Apabila menggunakan aplikasi menggunakan Docker Compose, anda boleh melihat log kontena melalui arahan log docker-compose. Penggunaan khusus adalah seperti berikut:

$ log karang pelabuhan [SERVICES...]

Antaranya, SERVICES ialah nama perkhidmatan yang ditentukan Secara lalai, log semua perkhidmatan akan dipaparkan.

  1. ELK Stack

ELK merujuk kepada gabungan tiga perisian sumber terbuka Elasticsearch + Logstash + Kibana, yang boleh bekerjasama untuk mengumpul, menganalisis dan menggambarkan log. Data log dalam Docker boleh dikumpul melalui Logstash, dan kemudian data log boleh dipindahkan ke Elasticsearch untuk pengindeksan dan mendapatkan semula, dan akhirnya data boleh dipaparkan secara visual melalui antara muka Kibana.

Menggunakan ELK Stack untuk pengumpulan dan visualisasi log Docker memerlukan langkah berikut:

(1) Pasang Docker

(2) Pasang Docker Compose

( 3) Muat turun fail imej ELK Stack: docker pull sebp/elk

(4) Gunakan fail docker-compose.yml untuk memulakan perkhidmatan ELK Stack:

versi: '3.7'
perkhidmatan:
elasticsearch:

rreee

kibana :

image: sebp/elk
ports:
  - "9200:9200"
volumes:
  - ./elasticsearch.yml:/etc/elasticsearch/elasticsearch.yml
Salin selepas log masuk

logstash:

image: sebp/elk
ports:
  - "5601:5601"
links:
  - elasticsearch
Salin selepas log masuk

(5) Tentukan laluan log Docker dalam fail konfigurasi Logstash:

input {
fail {

image: sebp/elk
volumes:
  - ./logstash:/etc/logstash/conf.d
links:
  - elasticsearch
Salin selepas log masuk

}
}

tapis {
jika [taip] == "docker" {

}
}

output {
elasticsearch {

path => ["/var/lib/docker/containers/*/*.log"]
type => "docker"
codec => "json"
Salin selepas log masuk

}
}

(6) Mulakan semula perkhidmatan Logstash, dan kemudian cari dan paparkan fail log Docker melalui antara muka Kibana.

Ringkasnya, artikel ini memperincikan kaedah melihat fail log dalam Docker, termasuk arahan CLI Docker, alatan pihak ketiga seperti Docker Compose dan ELK Stack. Dengan bantuan alat ini, kami boleh memantau dan menyahpepijat maklumat log bekas Docker dengan lebih mudah untuk memastikan operasi normal aplikasi.

Atas ialah kandungan terperinci Docker menyemak di mana fail log berada. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimanakah saya menggunakan aplikasi ke kluster Swarm Docker? Bagaimanakah saya menggunakan aplikasi ke kluster Swarm Docker? Mar 17, 2025 pm 04:20 PM

Butiran artikel yang menggerakkan aplikasi ke docker swarm, meliputi penyediaan, langkah penempatan, dan langkah -langkah keselamatan semasa proses.

Apakah pod, penyebaran, dan perkhidmatan Kubernetes? Apakah pod, penyebaran, dan perkhidmatan Kubernetes? Mar 17, 2025 pm 04:25 PM

Artikel ini menerangkan pod, penyebaran, dan perkhidmatan Kubernetes, memperincikan peranan mereka dalam menguruskan aplikasi kontena. Ia membincangkan bagaimana komponen ini meningkatkan skalabiliti, kestabilan, dan komunikasi dalam aplikasi. (159 aksara)

Bagaimanakah saya membuat skala aplikasi di Kubernet? Bagaimanakah saya membuat skala aplikasi di Kubernet? Mar 17, 2025 pm 04:28 PM

Artikel ini membincangkan aplikasi penskalaan di Kubernet menggunakan skala manual, HPA, VPA, dan AutoScaler kluster, dan menyediakan amalan dan alat terbaik untuk pemantauan dan mengautomasikan skala.

Bagaimana saya menguruskan perkhidmatan di Swarm Docker? Bagaimana saya menguruskan perkhidmatan di Swarm Docker? Mar 17, 2025 pm 04:22 PM

Artikel membincangkan pengurusan perkhidmatan dalam Swarm Docker, memberi tumpuan kepada penciptaan, skala, pemantauan, dan mengemas kini tanpa downtime.

Bagaimana saya melaksanakan kemas kini rolling di Swarm Docker? Bagaimana saya melaksanakan kemas kini rolling di Swarm Docker? Mar 17, 2025 pm 04:23 PM

Artikel ini membincangkan pelaksanaan kemas kini rolling di Swarm Docker untuk mengemas kini perkhidmatan tanpa downtime. Ia meliputi perkhidmatan mengemas kini, menetapkan parameter kemas kini, memantau kemajuan, dan memastikan kemas kini yang lancar.

Bagaimana saya menguruskan penyebaran di Kubernet? Bagaimana saya menguruskan penyebaran di Kubernet? Mar 17, 2025 pm 04:27 PM

Artikel ini membincangkan pengurusan penyebaran Kubernet, memberi tumpuan kepada penciptaan, kemas kini, skala, pemantauan, dan automasi menggunakan pelbagai alat dan amalan terbaik.

Bagaimana saya membuat kelompok docker swarm? Bagaimana saya membuat kelompok docker swarm? Mar 17, 2025 pm 04:19 PM

Artikel membincangkan membuat dan menguruskan kluster docker swarm, termasuk persediaan, perkhidmatan skala, dan amalan terbaik keselamatan.

Soalan Temuduga Docker: Ace Wawancara Kejuruteraan DevOps Anda Soalan Temuduga Docker: Ace Wawancara Kejuruteraan DevOps Anda Apr 06, 2025 am 12:01 AM

Docker adalah kemahiran yang mesti ada untuk jurutera DevOps. 1.Docker adalah platform kontena sumber terbuka yang mencapai pengasingan dan mudah alih dengan aplikasi pembungkusan dan kebergantungan mereka ke dalam bekas. 2. Docker bekerja dengan ruang nama, kumpulan kawalan dan sistem fail bersekutu. 3. Penggunaan asas termasuk mencipta, menjalankan dan menguruskan bekas. 4. Penggunaan lanjutan termasuk menggunakan DockerCompose untuk menguruskan aplikasi multi-kontainer. 5. Kesilapan umum termasuk kegagalan kontena, masalah pemetaan pelabuhan, dan masalah ketekunan data. Kemahiran penyahpepijatan termasuk log melihat, memasukkan bekas, dan melihat maklumat terperinci. 6. Pengoptimuman prestasi dan amalan terbaik termasuk pengoptimuman imej, kekangan sumber, pengoptimuman rangkaian dan amalan terbaik untuk menggunakan Dockerfile.

See all articles