Docker - 컨테이너 리스트 확인

우분투에서 Docker를 사용할 때 실행 중이거나, 생성된 모든 컨테이너 리스트를 확인하는 방법을 소개합니다.

1. 실행 중인 컨테이너 리스트

docker container ls는 현재 실행 중인 컨테이너 목록을 출력합니다.

$ docker container ls
CONTAINER ID   IMAGE     COMMAND   CREATED        STATUS                  PORTS     NAMES
042d717aa2b6   busybox   "sh"      1 second ago   Up Less than a second             youthful_golick

실행 중인 컨테이너가 없다면 아래와 같이 출력되는 내용이 없습니다.

$ docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
  • CONTAINER ID : 컨테이너의 고유 ID
  • IMAGE : 컨테이너를 생성할 때 사용된 이미지
  • CREATED : 생성되고 지난 시간
  • STATUS : 컨테이너 상태 (UP: 실행중, Exited: 종료, Pause: 일시정지)
  • NAMES : 컨테이너의 이름

또한, docker ps 명령어도 위와 같이 실행 중인 컨테이너 목록을 출력합니다.

$ docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED         STATUS         PORTS     NAMES
2b887c574f05   busybox   "sh"      4 seconds ago   Up 3 seconds             happy_hamilton

2. 모든 컨테이너 리스트

docker container ls -a처럼 -a 옵션을 입력하면 생성된 모든 컨테이너 리스트를 보여줍니다. 실행 중이 아닌, 종료된 컨테이너들도 확인할 수 있습니다.

$ docker container ls -a
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS                     PORTS     NAMES
042d717aa2b6   busybox       "sh"                     3 minutes ago   Up 3 minutes                         youthful_golick
2b887c574f05   busybox       "sh"                     4 minutes ago   Exited (0) 4 minutes ago             happy_hamilton
30c323b5a82e   busybox       "sh"                     2 hours ago     Exited (130) 2 hours ago             kind_heyrovsky
e0a6317da1b5   busybox       "echo 'hello from bu…"   2 hours ago     Exited (0) 2 hours ago               angry_stonebraker
aab651f71d8a   hello-world   "/hello"                 2 hours ago     Exited (0) 2 hours ago               xenodochial_dubinsky

3. 최근에 실행된 컨테이너 리스트

docker container ls --latest 명령어는 가장 최근에 실행된 컨테이너를 보여줍니다.

$ docker container ls --latest
CONTAINER ID   IMAGE     COMMAND   CREATED         STATUS        PORTS     NAMES
ef1758c3f211   busybox   "sh"      2 seconds ago   Up 1 second             test2

최근에 실행된 컨테이너 3개를 보려면 docker container ls -n 3처럼 -n옵션으로 개수를 입력하면 됩니다.

$ docker container ls -n 3
CONTAINER ID   IMAGE     COMMAND   CREATED              STATUS                          PORTS     NAMES
ef1758c3f211   busybox   "sh"      About a minute ago   Up About a minute                         test2
39c63b05d61a   busybox   "sh"      About a minute ago   Exited (0) About a minute ago             test1
042d717aa2b6   busybox   "sh"      7 minutes ago        Exited (0) About a minute ago             youthful_golick

4. 컨테이너 리스트에서 ID만 출력

명령어에 -q 옵션을 사용하여 컨테이너 ID만 출력되도록 할 수 있습니다.

$ docker container ls -q
ef1758c3f211

종료된 컨테이너도 보고 싶다면 -a -q 옵션을 사용하시면 됩니다.

$ docker container ls -a -q
ef1758c3f211
39c63b05d61a
042d717aa2b6
2b887c574f05
30c323b5a82e
e0a6317da1b5
aab651f71d8a

5. 컨테이너 삭제

docker container rm [Container ID] 명령어로 어떤 Container를 삭제할 수 있습니다.

$ docker container rm e0a6317da1b5

종료된 모든 컨테이너를 삭제하려면 docker container prune 명령어를 사용하시면 됩니다.

$ docker container prune
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
Deleted Containers:
39c63b05d61a6577c6fa628c878ba04c03aaa9dbaa7f9e06f681a95b8932d5e7
042d717aa2b654aa9eaa9f36569f108702c45517ce1ad5bf7d5df2379b1df574
2b887c574f056aede9c2d1ec46cf11ea4543a85fe27d342d633b373b204264fc
30c323b5a82ea9fb094a11838913d03ebbeab22c80ec9e4b1bf12fdd2c034af9
aab651f71d8a92d5e6aa4e5c8a8aae11e23409429c83c2096f7bcda77bec0699

Total reclaimed space: 20B

컨테이너 리스트를 확인해보면 실행 중인 컨테이너 외에 종료된 컨테이너는 모두 삭제되었습니다.

$ docker container ls -a
CONTAINER ID   IMAGE     COMMAND   CREATED         STATUS         PORTS     NAMES
ef1758c3f211   busybox   "sh"      6 minutes ago   Up 6 minutes             test2
Loading script...
codechachaCopyright ©2019 codechacha