2022-03-22 12:40:55 +01:00
version : "3.5"
2019-06-02 18:07:21 +02:00
services :
2020-06-29 21:05:34 +02:00
vmagent :
container_name : vmagent
2022-08-09 11:26:22 +02:00
image : victoriametrics/vmagent:v1.80.0
2019-06-02 18:07:21 +02:00
depends_on :
- "victoriametrics"
ports :
2020-06-29 21:05:34 +02:00
- 8429 : 8429
2019-06-02 18:07:21 +02:00
volumes :
2020-06-29 21:05:34 +02:00
- vmagentdata:/vmagentdata
2019-06-02 18:07:21 +02:00
- ./prometheus.yml:/etc/prometheus/prometheus.yml
command :
2022-03-22 12:40:55 +01:00
- "--promscrape.config=/etc/prometheus/prometheus.yml"
- "--remoteWrite.url=http://victoriametrics:8428/api/v1/write"
2019-06-02 18:07:21 +02:00
networks :
- vm_net
restart : always
victoriametrics :
container_name : victoriametrics
2022-08-09 11:26:22 +02:00
image : victoriametrics/victoria-metrics:v1.80.0
2019-06-02 18:07:21 +02:00
ports :
- 8428 : 8428
2020-11-01 22:34:39 +01:00
- 8089 : 8089
- 8089 : 8089 /udp
2019-06-02 18:07:21 +02:00
- 2003 : 2003
2020-10-28 10:17:56 +01:00
- 2003 : 2003 /udp
2019-06-02 18:07:21 +02:00
- 4242 : 4242
volumes :
- vmdata:/storage
command :
2022-03-22 12:40:55 +01:00
- "--storageDataPath=/storage"
- "--graphiteListenAddr=:2003"
- "--opentsdbListenAddr=:4242"
- "--httpListenAddr=:8428"
- "--influxListenAddr=:8089"
2022-05-06 16:30:41 +02:00
- "--vmalert.proxyURL=http://vmalert:8880"
2019-06-02 18:07:21 +02:00
networks :
- vm_net
restart : always
grafana :
container_name : grafana
2022-08-18 12:21:22 +02:00
image : grafana/grafana:9.1.0
2019-06-02 18:07:21 +02:00
depends_on :
- "victoriametrics"
ports :
- 3000 : 3000
volumes :
- grafanadata:/var/lib/grafana
2019-06-06 22:37:44 +02:00
- ./provisioning/:/etc/grafana/provisioning/
2020-06-29 21:05:34 +02:00
- ./../../dashboards/victoriametrics.json:/var/lib/grafana/dashboards/vm.json
2020-07-15 12:56:06 +02:00
- ./../../dashboards/vmagent.json:/var/lib/grafana/dashboards/vmagent.json
2021-08-31 11:28:02 +02:00
- ./../../dashboards/vmalert.json:/var/lib/grafana/dashboards/vmalert.json
2019-06-02 18:07:21 +02:00
networks :
- vm_net
restart : always
2020-11-07 16:00:23 +01:00
vmalert :
container_name : vmalert
2022-08-09 11:26:22 +02:00
image : victoriametrics/vmalert:v1.80.0
2020-11-07 16:00:23 +01:00
depends_on :
- "victoriametrics"
- "alertmanager"
ports :
- 8880 : 8880
volumes :
- ./alerts.yml:/etc/alerts/alerts.yml
command :
2022-03-22 12:40:55 +01:00
- "--datasource.url=http://victoriametrics:8428/"
- "--remoteRead.url=http://victoriametrics:8428/"
- "--remoteWrite.url=http://victoriametrics:8428/"
- "--notifier.url=http://alertmanager:9093/"
- "--rule=/etc/alerts/*.yml"
2020-11-07 16:00:23 +01:00
# display source of alerts in grafana
2022-03-22 12:40:55 +01:00
- "--external.url=http://127.0.0.1:3000" #grafana outside container
- '--external.alert.source=explore?orgId=1&left=["now-1h","now","VictoriaMetrics",{"expr":"{{$$expr|quotesEscape|crlfEscape|queryEscape}}"},{"mode":"Metrics"},{"ui":[true,true,true,"none"]}]' ## when copypaste the line be aware of '$$' for escaping in '$expr'
2021-03-28 21:20:22 +02:00
networks :
2020-11-07 16:00:23 +01:00
- vm_net
restart : always
alertmanager :
container_name : alertmanager
2022-08-09 11:26:22 +02:00
image : prom/alertmanager:v0.24.0
2021-01-07 22:33:53 +01:00
volumes :
- ./alertmanager.yml:/config/alertmanager.yml
command :
2022-03-22 12:40:55 +01:00
- "--config.file=/config/alertmanager.yml"
2020-11-07 16:00:23 +01:00
ports :
- 9093 : 9093
networks :
- vm_net
restart : always
2019-06-02 18:07:21 +02:00
volumes :
2020-06-29 21:05:34 +02:00
vmagentdata : {}
2019-06-02 18:07:21 +02:00
vmdata : {}
grafanadata : {}
networks :
vm_net :