Docker How to list containers ? In Docker, we can use docker ps to show all running containers, docker ps -a to show all running and stopped containers.

Here are some of the commonly used examples : Terminal

# common
$ docker ps                             // show only running containers
$ docker ps -a                          // show all containers (running and stopped or exited)

# recent containers
$ docker ps -l                          // To show the latest created container (all states)
$ docker ps -n=5                        // show 5 last created containers (all states)

# file size
$ docker ps -s                          // show the file size of all running containers
$ docker ps -as                         // show the file size of all containers (all states)

# filter examples
$ docker ps -f "status=created"         // show containers which status is `created`
$ docker ps -f "status=exited"          // show containers which status is `exited`, stopped containers.
$ docker ps -af "name=trusting_murdock" // show container which name is 'trusting_murdock'
$ docker ps -af "exited=1"              // show containers which status is ` Exited (1)`, find errors.

# formatting output
$ docker ps -a --format "{{.ID}}: {{.Command}}: {{.Status}}"

# misc
$ docker ps --no-trunc                  // prevent truncating output

What is ps ? The ps stands for process status. On Docker, it shows the status of containers along with their IDs.

1. Samples

Here are all the containers.

$ docker ps -a

CONTAINER ID   IMAGE          COMMAND                  CREATED        STATUS                    PORTS                   NAMES
80a9db188a21   busybox        "sh"                     18 seconds ago Up 17 seconds                                     happy_villani
e90b8831a4b8   nginx          "/bin/bash -c ls"        11 weeks ago   Up 4 hours                                        my_nginx
d362659da5fc   app:1.1        "java -jar app.jar"      9 days ago     Exited (255) 8 days ago    0.0.0.0:80->8080/tcp   xenodochial_volhard
93c591f6b764   eb7e5d08c776   "java -XX:+UnlockCom…"   9 days ago     Exited (1) 9 days ago                             nervous_booth

1.1 Show running containers, Status == Up

$ docker ps

CONTAINER ID   IMAGE          COMMAND                  CREATED        STATUS                    PORTS                   NAMES
80a9db188a21   busybox        "sh"                     18 seconds ago Up 17 seconds                                     happy_villani
e90b8831a4b8   nginx          "/bin/bash -c ls"        11 weeks ago   Up 4 hours                                        my_nginx

1.2 Show 3 last created containers (any status)

$ docker ps -n=3

CONTAINER ID   IMAGE          COMMAND                  CREATED        STATUS                    PORTS                   NAMES
80a9db188a21   busybox        "sh"                     18 seconds ago Up 17 seconds                                     happy_villani
e90b8831a4b8   nginx          "/bin/bash -c ls"        11 weeks ago   Up 4 hours                                        my_nginx
d362659da5fc   app:1.1        "java -jar app.jar"      9 days ago     Exited (255) 8 days ago    0.0.0.0:80->8080/tcp   xenodochial_volhard

1.3 Show file size of running containers.

$ docker ps -s

CONTAINER ID   IMAGE          COMMAND                  CREATED        STATUS                    PORTS                   NAMES             SIZE
80a9db188a21   busybox        "sh"                     18 seconds ago Up 17 seconds                                     happy_villani     0B (virtual 1.22MB)
e90b8831a4b8   nginx          "/bin/bash -c ls"        11 weeks ago   Up 4 hours                                        my_nginx          58.48 kB (virtual 99.2 MB)

1.4 Filter by status.

$ docker ps -f "status=exited"

CONTAINER ID   IMAGE          COMMAND                  CREATED        STATUS                    PORTS                   NAMES
d362659da5fc   app:1.1        "java -jar app.jar"      9 days ago     Exited (255) 8 days ago    0.0.0.0:80->8080/tcp   xenodochial_volhard
93c591f6b764   eb7e5d08c776   "java -XX:+UnlockCom…"   9 days ago     Exited (1) 9 days ago                             nervous_booth


$ docker ps -af "exited=1"

93c591f6b764   eb7e5d08c776   "java -XX:+UnlockCom…"   9 days ago     Exited (1) 9 days ago                             nervous_booth

1.5 Filter by container id

$ docker ps -af id=d362659da5fc

CONTAINER ID   IMAGE          COMMAND                  CREATED        STATUS                    PORTS                   NAMES
d362659da5fc   app:1.1        "java -jar app.jar"      9 days ago     Exited (255) 8 days ago    0.0.0.0:80->8080/tcp   xenodochial_volhard

Further Reading
Please refer to this official Docker ps guide for more supported filters.

1.6 Formatting output

$ docker ps -a --format "{{.ID}}: {{.Command}}: {{.Status}}"


80a9db188a21: "sh": Up 17 seconds
e90b8831a4b8: "/bin/bash -c ls": Up 4 hours
d362659da5fc: "java -jar app.jar": Exited (255) 8 days ago
93c591f6b764: "java -XX:+UnlockCom…": Exited (1) 9 days ago

2. docker ps –help

This is the most powerful command.

$ docker ps --help

Usage:  docker ps [OPTIONS]

List containers

Options:
  -a, --all             Show all containers (default shows just running)
  -f, --filter filter   Filter output based on conditions provided
      --format string   Pretty-print containers using a Go template
  -n, --last int        Show n last created containers (includes all
                        states) (default -1)
  -l, --latest          Show the latest created container (includes all
                        states)
      --no-trunc        Dont truncate output
  -q, --quiet           Only display numeric IDs
  -s, --size            Display total file sizes

References

Read also : How to copy files from docker container to host ?

Laisser un commentaire