HOWTO · Docker

Docker의 컨테이너 나열

이 튜토리얼은 시스템에서 생성한 도커 컨테이너를 나열하는 방법을 보여줍니다.

이 페이지의 내용

이 기사에서는 시스템에서 생성된 컨테이너를 나열하기 위한 다양한 명령을 살펴봅니다. 이것은 이러한 명령이 값을 반환하기 전에 미리 몇 가지 컨테이너를 만들어야 함을 의미합니다.

Docker에서 실행 중인 모든 컨테이너 나열

실행 중인 컨테이너를 나열하는 것으로 시작하겠습니다. 이를 위해 docker ps 명령을 사용할 수 있습니다.

$ docker ps

이 명령은 현재 실행 중인 모든 컨테이너를 나열하며 아래 샘플 출력의 STATUS 열에서 볼 수 있습니다. 여기에 표시된 대로 컨테이너가 가동되어 실행된 대략적인 시간도 확인할 수 있습니다.

CONTAINER ID   IMAGE     COMMAND                  CREATED              STATUS              PORTS     NAMES
1c955bac1a84   ubuntu    "bash"                   About a minute ago   Up About a minute             musing_morse
1296f9b9d330   nginx     "/docker-entrypoint.…"   2 minutes ago        Up 2 minutes        80/tcp    distracted_napier

docker container ls 명령을 사용하여 동일한 출력을 반환할 수도 있습니다.

CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS     NAMES
1c955bac1a84   ubuntu    "bash"                   14 minutes ago   Up 14 minutes             musing_morse
1296f9b9d330   nginx     "/docker-entrypoint.…"   15 minutes ago   Up 14 minutes   80/tcp    distracted_napier

STATUS 외에 다음 세부 정보도 반환됩니다.

  • 컨테이너의 고유 식별자인 CONTAINER ID
  • 컨테이너 이미지, 즉 해당 컨테이너를 빌드하는 데 사용한 이미지
  • 컨테이너 실행을 담당하는 COMMAND
  • 호스트 머신과 컨테이너 간의 PORT 매핑.

Docker에서 실행 및 종료된 컨테이너 나열

실행 중인 컨테이너를 나열하는 것 외에도 실행 중인 컨테이너와 종료된 컨테이너를 모두 나열할 수도 있습니다. 이전에 사용한 명령에 - 태그를 추가해야 합니다.

기본적으로 이러한 명령은 실행 중인 컨테이너만 표시합니다. 그러나 이 태그를 사용하면 종료된 컨테이너를 나열하는 명령도 얻을 수 있습니다.

명령:

$ docker ps -a

출력:

CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS                          PORTS     NAMES
38086474cb6c   debian    "bash"                   4 minutes ago    Exited (0) 2 minutes ago                  epic_jackson
1c955bac1a84   ubuntu    "bash"                   52 minutes ago   Exited (0) About a minute ago             musing_morse
1296f9b9d330   nginx     "/docker-entrypoint.…"   53 minutes ago   Up 58 seconds                   80/tcp    distracted_napier

위의 상태 열 아래 출력에서 ​​마지막 컨테이너가 실행되는 동안 처음 두 개의 컨테이너가 실행되고 있지 않음을 알 수 있습니다.

Docker의 특정 수의 컨테이너 나열

시스템에 특정 수의 컨테이너를 표시할 수도 있습니다. 처음 두 개의 컨테이너만 표시하고 싶다고 가정합니다. 위에서 사용한 명령과 함께 -n 태그를 사용하여 이를 수행할 수 있습니다.

이렇게 하면 실행 중과 종료가 모두 표시되지만 지정된 수보다 많지는 않습니다.

명령:

$ docker container ls -n 2

출력:

CONTAINER ID   IMAGE     COMMAND   CREATED             STATUS                      PORTS     NAMES
38086474cb6c   debian    "bash"    31 minutes ago      Exited (0) 29 minutes ago             epic_jackson
1c955bac1a84   ubuntu    "bash"    About an hour ago   Exited (0) 27 minutes ago             musing_morse

같은 방식으로 docker ps 명령을 사용하면 아래에 지정된 정확한 컨테이너 수도 나열됩니다. 이를 구현하는 방법은 다음과 같습니다.

명령:

$ docker ps -a -n 2

출력:

CONTAINER ID   IMAGE     COMMAND   CREATED             STATUS                      PORTS     NAMES
38086474cb6c   debian    "bash"    33 minutes ago      Exited (0) 31 minutes ago             epic_jackson
1c955bac1a84   ubuntu    "bash"    About an hour ago   Exited (0) 29 minutes ago             musing_morse

Docker에서 종료된 컨테이너만 나열

필터를 사용하여 현재 실행되지 않는 컨테이너만 나열할 수도 있습니다. -f 태그를 사용하여 충족하려는 조건을 지정합니다. 이 경우 종료 상태의 컨테이너만 반환하고자 합니다.

다른 것을 기반으로 컨테이너를 반환하려는 경우 여러 필터를 추가할 수도 있습니다. 다음은 종료 상태의 컨테이너를 나열하는 방법입니다.

명령:

$ docker container ls --filter "status=exited"

출력:

CONTAINER ID   IMAGE     COMMAND   CREATED          STATUS                      PORTS     NAMES
38086474cb6c   debian    "bash"    51 minutes ago   Exited (0) 49 minutes ago             epic_jackson
1c955bac1a84   ubuntu    "bash"    2 hours ago      Exited (0) 48 minutes ago             musing_morse

Docker에서 최근에 생성된 컨테이너 나열

-latest 태그를 사용하여 최신 컨테이너를 반환하는 것도 가능합니다. 이것은 우리가 최근에 생성한 현재 컨테이너를 반환할 것입니다.

명령:

$ docker container ls --latest

출력:

CONTAINER ID   IMAGE     COMMAND   CREATED          STATUS                      PORTS     NAMES
38086474cb6c   debian    "bash"    55 minutes ago   Exited (0) 53 minutes ago             epic_jackson

Docker의 ID 측면에서 컨테이너 나열

컨테이너를 ID별로 나열할 수도 있으며 아래와 같이 자동 옵션이라고도 하는 -q를 사용하여 컨테이너를 나열할 수 있습니다.

명령:

$ docker container ls -q

출력:

 d780996c499a
f7509cd49142
72c8debe5efa

Docker에서 크기와 함께 컨테이너 나열

크기와 함께 컨테이너를 나열할 수도 있습니다. 다른 세부 사항 중에서 가장 큰 메모리 크기를 차지하는 항목을 결정할 수 있습니다.

크기 태그라고도 하는 - 태그를 사용하여 이를 달성할 수 있습니다.

명령:

$ docker container ls -s

출력:

CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                                                 NAMES               SIZE
d780996c499a   4ac4842c584e   "/opt/sonarqube/bin/…"   3 minutes ago   Up 3 minutes   9000/tcp                                              amazing_benz        73.2kB (virtual 520MB)
f7509cd49142   5285cb69ea55   "docker-entrypoint.s…"   3 minutes ago   Up 3 minutes   27017/tcp                                             boring_wilson       0B (virtual 698MB)
72c8debe5efa   rabbitmq       "docker-entrypoint.s…"   4 minutes ago   Up 4 minutes   4369/tcp, 5671-5672/tcp, 15691-15692/tcp, 25672/tcp   determined_curran   0B (virtual 221MB)