시스템에서 모든 Docker 컨테이너 목록화하는 방법

DockerBeginner
지금 연습하기

소개

이 튜토리얼에서는 시스템에서 모든 Docker 컨테이너를 나열하는 프로세스를 살펴봅니다. 초보 사용자이든 숙련된 Docker 사용자이든, 컨테이너를 관리하는 방법을 이해하는 것은 효율적인 애플리케이션 배포 및 유지 관리에 필수적입니다. 이 가이드를 마치면 Docker 컨테이너를 쉽게 나열하고 관리할 수 있는 지식을 갖추게 될 것입니다.

Docker 컨테이너 이해

Docker 는 컨테이너화된 애플리케이션을 구축, 배포 및 관리하는 인기 있는 플랫폼입니다. 컨테이너는 코드, 런타임, 시스템 도구 및 라이브러리 등 애플리케이션 실행에 필요한 모든 것을 포함하는 경량의 독립 실행형 실행 가능 소프트웨어 패키지입니다.

Docker 컨테이너란 무엇인가요?

Docker 컨테이너는 코드와 모든 종속성을 패키징하여 한 컴퓨팅 환경에서 다른 환경으로 애플리케이션이 빠르고 안정적으로 실행되도록 하는 표준화된 소프트웨어 단위입니다. 컨테이너는 컨테이너 생성을 위한 청사진인 Docker 이미지에서 생성됩니다.

graph TD A[Docker 이미지] --> B[Docker 컨테이너] B --> C[실행 중인 애플리케이션]

Docker 컨테이너의 장점

  • 이식성: 컨테이너는 기본 인프라나 운영 체제에 관계없이 모든 머신에서 일관되게 실행될 수 있습니다.
  • 확장성: 컨테이너는 변화하는 수요를 충족하기 위해 쉽게 확장하거나 축소할 수 있습니다.
  • 효율성: 컨테이너는 경량이며 호스트 운영 체제를 공유하여 가상 머신보다 효율적입니다.
  • 일관성: 컨테이너는 환경에 관계없이 애플리케이션이 동일한 방식으로 실행되도록 보장합니다.

Docker 컨테이너 수명주기

Docker 컨테이너 수명주기는 다음 단계를 포함합니다.

  1. 생성: 컨테이너는 Docker 이미지에서 생성됩니다.
  2. 시작: 컨테이너가 시작되고 내부의 애플리케이션이 실행되기 시작합니다.
  3. 중지: 컨테이너가 중지되지만 컨테이너 자체는 여전히 존재합니다.
  4. 제거: 컨테이너가 시스템에서 제거됩니다.

시스템에서 Docker 컨테이너 목록화하기

시스템에 Docker 컨테이너가 실행되면 목록화 및 관리가 필요합니다. LabEx 는 Docker 컨테이너를 목록화하고 검사하는 데 도움이 되는 여러 명령어를 제공합니다.

모든 실행 중인 컨테이너 목록화

시스템에서 현재 실행 중인 모든 Docker 컨테이너를 목록화하려면 다음 명령어를 사용합니다.

docker ps

이 명령어는 각 실행 중인 컨테이너에 대한 정보 (컨테이너 ID, 컨테이너 생성에 사용된 이미지, 컨테이너에서 실행 중인 명령, 컨테이너 생성 시간, 컨테이너 상태, 컨테이너가 노출한 포트 등) 를 표 형식으로 표시합니다.

모든 컨테이너 목록화 (실행 중 및 중지됨)

현재 중지된 컨테이너를 포함하여 시스템의 모든 컨테이너를 보고 싶다면 다음 명령어를 사용할 수 있습니다.

docker ps -a

이 명령어는 시스템의 모든 컨테이너 (실행 중 및 중지됨) 에 대한 정보를 표 형식으로 표시합니다.

컨테이너 목록 필터링

docker ps 명령어를 사용하여 다양한 옵션으로 컨테이너 목록을 필터링할 수도 있습니다. 예를 들어, 특정 이름을 가진 컨테이너만 표시하려면 다음을 사용할 수 있습니다.

docker ps -a --filter name=my-container

이 명령어는 "my-container"라는 이름을 가진 컨테이너만 표시합니다.

자세한 컨테이너 정보 표시

특정 컨테이너에 대한 자세한 정보를 얻으려면 docker inspect 명령어를 컨테이너 ID 또는 이름 뒤에 사용할 수 있습니다.

docker inspect my-container

이 명령어는 컨테이너의 구성, 네트워크 설정 등을 포함한 자세한 정보를 담은 JSON 객체를 출력합니다.

Docker 컨테이너 관리

이제 Docker 컨테이너를 목록화하는 방법을 알았으니, 일반적인 컨테이너 관리 작업에 대해 알아보겠습니다.

컨테이너 시작 및 중지

중지된 컨테이너를 시작하려면 다음 명령어를 사용합니다.

docker start my-container

실행 중인 컨테이너를 중지하려면 다음 명령어를 사용합니다.

docker stop my-container

컨테이너 재시작

실행 중인 컨테이너를 재시작하려면 docker restart 명령어를 사용합니다.

docker restart my-container

이 명령어는 컨테이너를 중지한 후 다시 시작합니다.

컨테이너 제거

시스템에서 컨테이너를 제거하려면 docker rm 명령어를 사용합니다.

docker rm my-container

이 명령어는 컨테이너를 제거하지만, 컨테이너를 생성한 이미지는 제거하지 않습니다.

컨테이너 내 명령 실행

때로는 실행 중인 컨테이너 내에서 명령을 실행해야 할 수 있습니다. docker exec 명령어를 사용하여 이 작업을 수행할 수 있습니다.

docker exec -it my-container /bin/bash

이 명령어는 컨테이너 내에서 대화형 쉘 세션을 시작합니다.

컨테이너 리소스 관리

컨테이너에 할당된 리소스 (CPU, 메모리 등) 를 관리하려면 컨테이너를 생성하거나 실행할 때 다양한 옵션을 사용할 수 있습니다. 예를 들어, 컨테이너가 최대 2 개의 CPU 코어와 512MB 의 RAM 만 사용하도록 제한하려면 다음 명령어를 사용할 수 있습니다.

docker run -c 2 -m 512m my-image

이러한 컨테이너 관리 작업을 이해하면 시스템에서 Docker 컨테이너를 효과적으로 제어하고 유지 관리할 수 있습니다.

요약

시스템의 모든 Docker 컨테이너를 목록화하는 능력은 모든 Docker 사용자에게 필수적인 기술입니다. 이 가이드에서 설명된 단계를 따르면 시스템에서 실행 중인 모든 컨테이너를 신속하고 효율적으로 식별하여 Docker 환경을 더 잘 관리하고 애플리케이션이 예상대로 실행되도록 할 수 있습니다.