> 운영 및 유지보수 > Docker > 도커 컨테이너가 차지하는 메모리를 확인하는 방법

도커 컨테이너가 차지하는 메모리를 확인하는 방법

PHPz
풀어 주다: 2023-04-18 14:49:56
원래의
12439명이 탐색했습니다.

클라우드 컴퓨팅의 발전으로 점점 더 많은 기업과 개인이 Docker를 컨테이너화 기술로 채택하기 시작했습니다. 그러나 Docker를 사용하는 과정에서 컨테이너가 차지하는 메모리를 확인하는 방법과 같은 몇 가지 문제가 발생할 수 있습니다. 이번 글에서는 Docker 컨테이너가 차지하는 메모리를 확인하는 방법을 소개합니다.

Docker는 물리적 머신에서 여러 컨테이너를 실행하는 데 도움이 되는 경량 가상화 기술입니다. 각 컨테이너에는 자체 파일 시스템, 네트워크 구성 및 프로세스 공간이 있으며 서로 격리되어 있어 서로 영향을 주지 않고 동일한 물리적 머신에서 함께 작업할 수 있습니다. 그러나 컨테이너는 컴퓨터 메모리 리소스도 차지합니다. 메모리를 너무 많이 차지하면 시스템 성능 문제가 발생할 수 있습니다.

그럼 Docker 컨테이너가 차지하는 메모리는 어떻게 확인하나요?

방법 1: Docker stats 명령 사용

Docker와 함께 제공되는 stats 명령은 Docker 컨테이너의 메모리 사용량을 실시간으로 모니터링할 수 있습니다. 터미널에 다음 명령을 입력하세요:

docker stats
로그인 후 복사

그러면 컨테이너 ID, 이름, CPU 사용량, 메모리 사용량, 네트워크 I/O 등을 포함하여 현재 실행 중인 모든 컨테이너의 통계가 나열됩니다.

그러나 이 방법은 특정 컨테이너의 메모리 사용량을 보는 데는 적합하지 않습니다. 단일 컨테이너의 메모리 사용량을 보려면 다음 명령을 사용하면 됩니다.

docker stats [容器名称 or 容器ID]
로그인 후 복사

이 명령은 CPU 및 메모리 사용량 등을 포함하여 지정된 컨테이너의 실시간 통계를 출력합니다.

방법 2: Docker 통계 및 grep 명령 사용

지정된 컨테이너의 메모리 사용량을 확인하려면 grep 명령을 결합하여 결과를 필터링할 수도 있습니다. 다음은 grep 명령을 사용하여 MySQL 컨테이너의 메모리 사용량을 필터링하는 샘플 코드입니다.

docker stats $(docker ps --format={{.Names}}) | grep mysql
로그인 후 복사

이 명령은 실행 중인 모든 컨테이너의 통계를 출력하고 MySQL 컨테이너의 메모리 사용량을 필터링합니다.

방법 3: /proc 디렉터리 마운트

Linux 시스템에서는 /proc 디렉터리 아래에 시스템의 메모리 사용량을 기록하는 meminfo 파일이 있습니다. /proc 디렉터리를 컨테이너에 마운트하면 컨테이너 내 호스트의 메모리 사용량을 볼 수 있습니다. 구체적인 작업은 다음과 같습니다.

호스트에서 다음 명령을 실행합니다.

docker run -it --rm -v /proc:/host/proc alpine sh
로그인 후 복사

이 명령은 새 컨테이너를 시작하고 호스트의 /proc 디렉터리를 컨테이너의 /host/proc 디렉터리에 마운트합니다.

그런 다음 컨테이너에서 다음 명령을 실행하여 메모리 사용량을 확인하세요.

cat /host/proc/meminfo
로그인 후 복사

이 명령은 총 메모리, 사용 가능한 메모리, 캐시 등을 포함하여 호스트의 메모리 사용량을 출력합니다. 필요에 따라 분석하고 처리할 수 있습니다.

결론

이 기사에서는 Docker 컨테이너가 차지하는 메모리를 확인하는 세 가지 방법, 즉 Docker stats 명령, Docker stats 및 grep 명령을 사용하고 /proc 디렉터리를 마운트하는 방법을 소개합니다. 특정 상황에 따라 컨테이너의 메모리 사용량을 확인하는 적절한 방법을 선택하면 메모리 문제를 적시에 발견하고 처리하여 시스템 성능을 향상시킬 수 있습니다.

위 내용은 도커 컨테이너가 차지하는 메모리를 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿