Monitoring containers can easily be accomplished with a Prometheus, Grafana, and cAdvisor stack. Using Docker, the monitoring server stack can be stood up quickly. Prometheus: time series database and stats data scrapper from exporters such as cAdvisor and node-exporter. Grafana: dashboards and graphing of Prometheus data. cAdvisor: daemon that collects, aggregates, processes, and exports information about running containers. node-exporter: collects metrics on the host. You... [Read More]

In my last post, I showed how to setup a centralized log stack for Docker containers using Fluentd, Elasticsearch and Kibana containers. Now I’ll show how to use Amazon’s Elasticsearch service that includes a built-in Kibana interface for your logs. First create your Elasticsearch domain through AWS. I created an new IAM user account limited to only the Elasticsearch service. You can also use roles... [Read More]

This guide will describe the steps to setup a centralized logging system for docker containers. A properly configured docker image will send its log output to stdout, so the docker daemon can view them. This is where the Fluentd log driver, that’s built into docker, comes into play by taking those logs, applying optional filtering and sending it to Elasticsearch, Mongdb or other services. There’s... [Read More]

Cleaning Up Docker

In my day to day testing with Docker, I end up with a ton of containers, images and volumes. For testing purposes, I sometimes need a clean slate and clear out absolutely everything. Below are some of the commands that have made that process very easy. Remove all containers: $ docker rm $(docker ps -qa) The command ‘docker ps -qa’ feeds in just the container... [Read More]