What just happened?
While running the ApacheBench test, you may have noticed that the CPU utilization on the container running NGINX and PHP was high; in the example in the previous section, it was using 139.62 percent of the available CPU resource.
As we did not attach any resource limits to the containers we launched, it was easy for our test to use all of the available resources on the host Virtual Machine (VM). If this VM was being used by several users, all running their own containers, they may have started to notice that their applications had started to slow down or, even worse, the applications had started showing errors.
If you ever find yourself in this situation, you can use docker stats
to help track down the culprit.
Running docker stats $(docker ps -q)
will stream the statistics for all the currently running containers:
CONTAINER CPU % MEM USAGE/LIMIT MEM % NET I/O 361040b7b33e 0.07% 86.98 MB/1.905 GB 4.57% 2.514 kB/738 B 56b459ae9092 120.06% ...