Apabila menggunakan Docker untuk mengurus aplikasi kami, keperluan biasa ialah mengurus log aplikasi dengan berkesan. Cara mencetak log dalam bekas Docker adalah salah satu kemahiran yang perlu dikuasai oleh setiap pengguna Docker. Artikel ini akan memperkenalkan pengurusan log kontena Docker, termasuk cara mencetak log kontena dan cara menggunakan alatan yang disediakan oleh Docker untuk mengurus log dengan berkesan.
1. Pengenalan kepada log kontena Docker
Log kontena Docker (Log Kontena) merujuk kepada output rekod maklumat oleh aplikasi yang dijalankan dalam bekas Docker. Rekod ini termasuk status berjalan aplikasi, mesej ralat, output penyahpepijatan, dsb. Maklumat log ini penting untuk menyelesaikan masalah dan memantau kesihatan aplikasi anda.
Log kontena Docker dikeluarkan melalui STDOUT dan STDERR, ditangkap dan direkodkan oleh daemon Docker. Docker menyimpan log kontena dalam direktori /var/lib/docker/containers hos secara lalai.
2. Cetak log bekas Docker
Docker menyediakan berbilang cara untuk melihat log kontena. Berikut akan memperkenalkan beberapa cara yang biasa digunakan untuk melihat log kontena Docker.
Perintah log docker ialah cara yang paling mudah dan paling biasa digunakan untuk melihat log kontena Docker. Dengan arahan ini, kami boleh melihat semua maklumat log kontena dengan mudah.
Sintaks:
log buruh pelabuhan [OPSYEN] BEKAS
Antaranya, parameter OPTIONS termasuk:
-a, semua bekas
- -perincian, paparkan maklumat output log tambahan
--ikut, jejak output log
--kerana, nyatakan cap masa untuk memulakan output dari masa yang ditetapkan
-- tail, Hanya keluarkan N baris terakhir maklumat log
--cap masa, paparan cap masa
Contoh:
$ docker logs my_container
Arahan ini akan keluarkan my_container Semua maklumat log bekas.
Anda boleh mendapatkan shell bash bekas Docker melalui arahan bash, dan kemudian lihat fail log bekas.
Sintaks:
$ docker exec -it CONTAINER bash
$ cd /var/log
$ ls
Baris arahan pertama boleh memasuki bash daripada cangkerang kontena, arahan kedua pergi ke direktori tempat fail log berada, dan perintah ketiga menyenaraikan fail log.
Contohnya:
$ docker exec -it my_container bash
$ cd /var/log
$ ls
Pemandu log Docker menyokong penghantaran log kontena ke alat pengurusan log pihak ketiga, seperti ELK, dsb. Dengan mengkonfigurasi pemacu log Docker, kami boleh mengurus, menapis dan memajukan log dengan mudah untuk bekas kami. Berikut ialah beberapa pemacu log yang biasa digunakan:
json-file: Simpan log kontena dalam format Json ke dalam fail setempat
syslog: Hantar log kontena ke pelayan syslog melalui protokol syslog
jurnal: Hantar log kontena ke jurnal Linux melalui perkhidmatan systemd-journald dan rekodkannya dalam sistem fail log hos
Langkah khusus untuk menggunakan pemacu log Docker adalah seperti berikut:
1. Buat pemacu pembalakan. Seperti berikut:
$ docker plugin install --grant-all-permissions dev-logging
2. Mulakan bekas dan nyatakan pemacu log:
$ docker run - - name=my_container --log-driver=dev-logging IMAGE
3. Pengurusan log Docker
Docker menyediakan beberapa alatan berguna untuk mengurus log kontena, membolehkan kami menapis dan mencari , putaran dan kaedah lain untuk menguruskan log dengan berkesan.
Gunakan parameter --grep perintah log docker untuk menapis log kontena berdasarkan parameter. Sebagai contoh, arahan berikut akan mengeluarkan semua mesej ralat dalam fail all.log dalam bekas my_container:
$ docker logs my_container |
Gunakan alatan pihak ketiga
Atas ialah kandungan terperinci Cara pekerja pelabuhan mencetak log. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!