This assignment will help you monitor Docker containers with Prometheus and Grafana.
Architecture
Docker Containers
|
cAdvisor
|
Prometheus
|
Grafana
Step 1: Create Monitoring Directory
mkdir docker-monitoring
cd docker-monitoring
Step 2: Create Docker Compose File
vim docker-compose.yml
Add the following content:
version: '3'
services:
cadvisor:
image: gcr.io/cadvisor/cadvisor:latest
container_name: cadvisor
ports:
- "8081:8080"
volumes:
- /:/rootfs:ro
- /var/run:/var/run:ro
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
restart: unless-stopped
prometheus:
image: prom/prometheus
container_name: prometheus
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
restart: unless-stopped
grafana:
image: grafana/grafana
container_name: grafana
ports:
- "3000:3000"
restart: unless-stopped
Step 3: Create Prometheus Configuration
vim prometheus.yml
Add,
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'cadvisor'
static_configs:
- targets: ['cadvisor:8080']
Step 4: Start Monitoring Stack
docker-compose up -d
Verify:
docker ps

Step 5: Access cAdvisor
Open:
http://localhost:8081

You should see Docker container metrics.
Step 6: Access Prometheus
open,
http://localhost:9090

Go to:
Status → Targets
Verify:
cadvisor = UP

Step 7: Access Grafana
Open:
http://localhost:3000
Default login:
Username: admin
Password: admin
OR set a new password.

Latest posts by Mahesh Wabale (see all)
- Install and Configure Apache Tomcat Using Ansible - June 16, 2026
- Docker Container Monitoring Dashboard using Prometheus and Grafana - June 15, 2026
- Kubernetes Cluster Monitoring using Grafana & Prometheus - June 13, 2026