Dengan pembangunan pengkomputeran awan, semakin banyak perusahaan dan individu mula menggunakan Docker sebagai teknologi kontena. Walau bagaimanapun, dalam proses menggunakan Docker, kami mungkin menghadapi beberapa masalah, seperti cara melihat memori yang diduduki oleh bekas. Artikel ini akan memperkenalkan cara menyemak memori yang diduduki oleh bekas Docker.
Docker ialah teknologi virtualisasi ringan yang boleh membantu kami menjalankan berbilang bekas pada mesin fizikal. Setiap bekas mempunyai sistem fail sendiri, konfigurasi rangkaian dan ruang proses, dan mereka diasingkan antara satu sama lain supaya mereka boleh bekerja bersama-sama pada mesin fizikal yang sama tanpa menjejaskan satu sama lain. Walau bagaimanapun, bekas juga mengisi sumber ingatan komputer Jika terlalu banyak memori diduduki, ia boleh menyebabkan masalah prestasi pada sistem.
Jadi, bagaimana untuk menyemak memori yang diduduki oleh bekas Docker?
Kaedah 1: Gunakan arahan statistik Docker
Arahan statistik yang disertakan dengan Docker boleh memantau penggunaan memori bekas Docker dalam masa nyata. Masukkan arahan berikut dalam terminal:
docker stats
Ini akan menyenaraikan statistik semua bekas yang sedang dijalankan, termasuk ID bekas, nama, penggunaan CPU, penggunaan memori, rangkaian I/O, dsb.
Walau bagaimanapun, kaedah ini tidak sesuai untuk melihat penggunaan memori bagi bekas tertentu. Jika anda ingin melihat penggunaan memori bagi satu bekas, anda boleh menggunakan arahan berikut:
docker stats [容器名称 or 容器ID]
Arahan ini akan mengeluarkan statistik masa nyata bagi bekas yang ditentukan, termasuk penggunaan CPU dan memori.
Kaedah 2: Gunakan statistik Docker dan arahan grep
Jika anda ingin menyemak penggunaan memori bagi bekas tertentu, anda juga boleh menggabungkan arahan grep untuk menapis hasil. Berikut ialah kod sampel yang menggunakan arahan grep untuk menapis penggunaan memori bekas MySQL:
docker stats $(docker ps --format={{.Names}}) | grep mysql
Arahan ini akan mengeluarkan statistik semua bekas yang sedang berjalan dan menapis penggunaan memori MySQL bekas.
Kaedah 3: Lekapkan direktori /proc
Dalam sistem Linux, terdapat fail meminfo dalam direktori /proc, yang merekodkan penggunaan memori dalam sistem. Jika anda melekapkan direktori /proc ke dalam bekas, anda boleh melihat penggunaan memori pada hos dalam bekas. Operasi khusus adalah seperti berikut:
Laksanakan arahan berikut pada hos:
docker run -it --rm -v /proc:/host/proc alpine sh
Arahan ini akan memulakan bekas baharu dan melekapkan direktori /proc hos ke bekas / di bawah direktori hos/proc.
Kemudian, laksanakan arahan berikut dalam bekas untuk melihat penggunaan memori:
cat /host/proc/meminfo
Arahan ini akan mengeluarkan penggunaan memori pada hos, termasuk jumlah memori, memori percuma, cache, dll. Ia boleh dianalisis dan diproses mengikut keperluan.
Kesimpulan
Artikel ini memperkenalkan tiga kaedah untuk menyemak memori yang diduduki oleh bekas Docker, iaitu menggunakan arahan statistik Docker, arahan statistik Docker dan grep, dan memasang direktori /proc. Pilih kaedah yang sesuai untuk menyemak penggunaan memori bekas mengikut situasi tertentu, supaya masalah ingatan boleh ditemui dan ditangani dalam masa, dan prestasi sistem boleh dipertingkatkan.
Atas ialah kandungan terperinci Bagaimana untuk menyemak memori yang diduduki oleh bekas docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!