# Docker compose environment for VictoriaMetrics To spin-up VictoriaMetrics cluster, vmagent, vmalert, Alertmanager and Grafana run the following command: `docker-compose up` For single version check [docker compose in master branch](https://github.com/VictoriaMetrics/VictoriaMetrics/tree/master/deployment/docker). ## VictoriaMetrics VictoriaMetrics cluster in this environment consists of vminsert, vmstorage and vmselect components. Only vmselect has exposed port `:8481` and the rest of components are available only inside of environment. The communication scheme between components is the following: * [vmagent](#vmagent) sends scraped metrics to vminsert; * vminsert forwards data to vmstorage; * vmselect is connected to vmstorage for querying data; * [grafana](#grafana) is configured with datasource pointing to vmselect; * [vmalert](#vmalert) is configured to query vmselect and send alerts state and recording rules to vminsert; * [alertmanager](#alertmanager) is configured to receive notifications from vmalert. ## vmagent vmagent is used for scraping and pushing timeseries to VictoriaMetrics instance. It accepts Prometheus-compatible configuration `prometheus.yml` with listed targets for scraping. [Web interface link](http://localhost:8429/). ## vmalert vmalert evaluates alerting rules (`alerts.yml`) to track VictoriaMetrics health state. It is connected with AlertManager for firing alerts, and with VictoriaMetrics for executing queries and storing alert's state. [Web interface link](http://localhost:8880/). ## alertmanager AlertManager accepts notifications from `vmalert` and fires alerts. All notifications are blackholed according to `alertmanager.yml` config. [Web interface link](http://localhost:9093/). ## Grafana To access service open following [link](http://localhost:3000). Default creds: * login - `admin` * password - `admin` Grafana is provisioned by default with following entities: * VictoriaMetrics datasource * Prometheus datasource * VictoriaMetrics overview dashboard