Repolode
google

google/cadvisor

A Go daemon that collects, aggregates and exports resource usage and performance data for running containers, with a web UI and REST API.

Stars
19,498
Forks
2,500
Open issues
76
Last commit
13 days ago

What is it?

cAdvisor (Container Advisor) gives container users visibility into how their running containers use resources and perform. It runs as a daemon that, for each container, tracks resource isolation parameters, historical resource usage, histograms of that usage, and network statistics. The data can be viewed per container or for the whole machine.

cAdvisor has native support for Docker containers and is designed to work with other container types. Its container abstraction follows lmctfy's model, so containers are nested hierarchically. It can be run as a standalone binary, as a Docker container, or as a Kubernetes DaemonSet.

The project exposes a web UI on its port and a versioned remote REST API, with an official Go client in the client directory. Stats can also be exported to various storage plugins. The project's stated roadmap includes performance advice, auto-tuning, and usage prediction for schedulers.

Key features

  • 01Collects per-container resource isolation settings, historical usage and network statistics.
  • 02Provides machine-wide and per-container views of resource usage.
  • 03Includes a built-in web UI.
  • 04Exposes a versioned remote REST API and an official Go client.
  • 05Exports stats to various storage plugins.
  • 06Runs standalone, in Docker, or as a Kubernetes DaemonSet.

Use cases

  • Monitoring resource usage of Docker containers on a single host.
  • Running a per-node monitoring agent in a Kubernetes cluster.
  • Feeding container metrics into an external storage or monitoring pipeline.
  • Investigating historical CPU, memory and network use of containers.

Quick start

  1. 1

    Set the cAdvisor version to the latest release

    VERSION=0.55.1
  2. 2

    Run cAdvisor in a Docker container

    sudo docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:ro --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro --volume=/dev/disk/:/dev/disk:ro --publish=8080:8080 --detach=true --name=cadvisor --privileged --device=/dev/kmsg ghcr.io/google/cadvisor:$VERSION
  3. 3

    Open the web UI at http://localhost:8080

Things to know

  • The license is listed as NOASSERTION, so the terms are not clear from the metadata.
  • The Docker quick start requires a privileged container with several host directories mounted.
  • CentOS, Fedora, RHEL, and LXC setups need extra steps described separately in the docs.

In collections

Topics

FAQ

What is cadvisor?
A Go daemon that collects, aggregates and exports resource usage and performance data for running containers, with a web UI and REST API. cAdvisor (Container Advisor) gives container users visibility into how their running containers use resources and perform. It runs as a daemon that, for each container, tracks resource isolation parameters, historical resource usage, histograms of that usage, and network statistics. The data can be viewed per container or for the whole machine.
Is cadvisor free to use? What license does it have?
cadvisor is open source under the Other license. Check the license terms before using it in commercial products.
Is cadvisor still maintained?
Actively maintained. The last commit to cadvisor was on Oct 12, 2026.
What can I use cadvisor for?
Monitoring resource usage of Docker containers on a single host. Running a per-node monitoring agent in a Kubernetes cluster. Feeding container metrics into an external storage or monitoring pipeline. Investigating historical CPU, memory and network use of containers.
How do I install cadvisor?
Set the cAdvisor version to the latest release: VERSION=0.55.1 Run cAdvisor in a Docker container: sudo docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:ro --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro --volume=/dev/disk/:/dev/disk:ro --publish=8080:8080 --detach=true --name=cadvisor --privileged --device=/dev/kmsg ghcr.io/google/cadvisor:$VERSION Open the web UI at http://localhost:8080
Where can I get cadvisor?
The source code and installation instructions are on GitHub: https://github.com/google/cadvisor

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects