一键部署 Prometheus + Grafana + Alertmanager 教程(使用 Docker Compose)

Prometheus&Grafana监控工具的安装与部署 Prometheus‎‎是一个开源系统监控和警报工具包,最初是在‎‎SoundCloud‎‎上构建的。自2012年成立以来,许多公司和组织都采用了Prometheus,并且该项目拥有非常活跃的开发人员和用户‎‎社区‎‎。它现在是一个独立的开源项目,独立于任何公司维护。为了强调这一点,并澄清项目的治理结构,Prometheus于2016年加入‎‎云原生计算基金会‎‎,成为‎‎继Kubernetes‎‎之后的第二个托管项目。‎ ... 阅读详情

1. 安装前准备

确保你已安装以下组件:

# 安装 Docker
curl -fsSL https://get.docker.com | bash

# 安装 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" \
  -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

2. 创建项目目录结构

mkdir -p ~/prometheus-stack
cd ~/prometheus-stack

mkdir -p prometheus
mkdir -p alertmanager

3. 创建配置文件

nano docker-compose.yml

粘贴以下内容:

version: '3.3'

services:
  prometheus:
    image: prom/prometheus
    container_name: prometheus
    ports:
      - "9090:9090"
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml
      - ./prometheus:/etc/prometheus/rules
    restart: unless-stopped

  grafana:
    image: grafana/grafana-oss
    container_name: grafana
    ports:
      - "3001:3000"
    environment:
      - GF_SECURITY_ADMIN_USER=admin
      - GF_SECURITY_ADMIN_PASSWORD=admin
    volumes:
      - grafana-storage:/var/lib/grafana
    restart: unless-stopped

  alertmanager:
    image: prom/alertmanager
    container_name: alertmanager
    ports:
      - "9093:9093"
    volumes:
      - ./alertmanager.yml:/etc/alertmanager/alertmanager.yml
    command:
      - '--config.file=/etc/alertmanager/alertmanager.yml'
    restart: unless-stopped

volumes:
  grafana-storage:
nano prometheus.yml

内容如下

# my global config
global:
  scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# Alertmanager configuration
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          - "xxxxx:9093"

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  - "/etc/prometheus/rules/*.yml"
  # - "first_rules.yml"
  # - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
       # The label name is added as a label `label_name=<label_value>` to any timeseries scraped from this config.
        labels:
          app: "prometheus"
  - job_name: "agent_windows"
    static_configs:
      - targets: ["xxxx:9182"]
        labels:
          app: "windows"
          instance: "虚拟机"
  - job_name: "alertmanager"
    static_configs:
      - targets: ["localhost:9093"]
        labels:
          app: "alertmanager"
  - job_name: "node_exporter"
    static_configs:
      - targets: ["xxxx:9100"]
        labels:
           app: "node_exporter"
           instance: "阿里云测试服务器"
  - job_name: "process_exporter"
    static_configs:
      - targets: ["xxxx:9256"]
        labels:
           app: "process"
           instance: "阿里云测试服务器"
  - job_name: 'http_probe'
    metrics_path: /probe
    params:
      module: [http_2xx]
    static_configs:
      - targets:
          - https:XXXXXX
        labels:
          instance: "公司主页"
          app: webapp
      - targets:
          - http://xxxxxxxx:9997/docs#/
        labels:
          instance: "PDF合并"
          app: pdfservice
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      #- source_labels: [__param_target]
      #  target_label: url   
      # 保留 static_configs 里的 instance 标签,不覆盖
      # 也可以注释掉下一行,避免覆盖instance标签
      # - source_labels: [__param_target]
      #   target_label: instance
      - target_label: __address__
        replacement: xxxxxxx:9115
nano alertmanager.yml
route:
  group_by: ['alertname'] # 按 alertname 标签分组告警(相同告警合并通知)
  group_wait: 30s # 第一次告警延迟30秒再发送,防止太快触发
  group_interval: 5m  # 同一组告警发送间隔至少5分钟(防止频繁通知)
  repeat_interval: 1h # 告警持续存在,重复通知间隔1小时
  receiver: 'webhook_receiver'  # 默认发送接收器名称

receivers:
  - name: 'webhook_receiver'
    webhook_configs:
      - url: 'http://xxxx:5012/alertmanager_to_feishu'
        send_resolved: true 

inhibit_rules:
  - source_match:
      severity: 'critical'
    target_match:
      severity: 'warning'
    equal: ['alertname', 'dev', 'instance']

剩下的配置文件就可以添加到prometheus/文件夹下

4. 启动服务

docker-compose up -d

Linux部署Prometheus+Grafana Prometheus+Grafana 阅读详情

相关推荐

Grafana企业级监控实战:用Docker Compose一键部署Prometheus+Alertmanager+Grafana

本文详细介绍了如何使用Docker Compose一键部署企业级监控栈,整合Prometheus、Alertmanager和Grafana三大核心组件。内容涵盖从环境准备、架构设计、Docker Compose编排文件深度解析,到Prometheus配置、Alertmanager告警路由以及Grafana高级配置的完整实战流程,并提供了生产环境部署、安全加固、性能优化与故障排查的实用指南,旨在帮助企业技术团队快速构建稳定、可维护的监控解决方案。

backprop5master的博客 493

Prometheus+Grafana部署(超详细)

prometheus+grafana最新版详细部署全过程

Ustinan的博客 1万+

《Linux运维总结:基于ARM64架构CPU使用docker-compose一键离线部署prometheus+grafana+alertmanager之监控告警系统》

《Linux运维总结:基于ARM64架构CPU使用docker-compose一键离线部署prometheus+grafana+alertmanager之监控告警系统》

东城绝神 1466

Prometheus+Grafana基础介绍及搭建使用

企业级监控平台,超详细

h16678481的博客 1万+

一站式搭建 Prometheus + Grafana 监控系统(含 PostgreSQL/Redis/MongoDB/ES 及双重告警

本文提供了一套基于 Docker Compose 的 Linux 服务器全方位监控方案快速部署指南。方案包含 Prometheus 时序数据库、Grafana 可视化看板及各类 Exporter(主机/Redis/PostgreSQL/MongoDB/Elasticsearch),并配置双重告警机制(AlertManager 全局邮件告警 + Grafana 图表阈值告警)。通过自动化脚本一键生成配置文件,详细说明了环境准备、组件修改、服务启动、Grafana 配置等步骤,同时包含常见问题排查方法。所有服务

wjianwei666的专栏 686

PLC模拟量输入电路设计:±10V与±20mA信号调理全解析

在工业自动化和数据采集系统中,模拟量输入是连接物理世界与数字控制的核心桥梁。无论是变送器输出的4-20mA电流环,还是伺服驱动与信号发生器提供的±10V电压信号,PLC和采集模块都需要在复杂现场环境下稳定、精准地完成信号采集。理解信号体制的原理——电流环抗长线干扰、电压环响应快——是设计模拟输入前端的基础。通过精密电阻网络实现分压与采样,利用运放完成双极性到单极性的电平搬移,配合TVS与滤波电路保障可靠性,并经过ADC量化与校准流程,最终构建出兼顾精度、成本和工业级鲁棒性的完整信号链路。本文面向硬件工程师与

weixin_29163797的博客 295

【云原生】Prometheus&Grafana监控工具的安装与部署

‎Prometheus‎‎是一个开源系统监控和警报工具包,最初是在‎‎SoundCloud‎‎上构建的。自2012年成立以来,许多公司和组织都采用了Prometheus,并且该项目拥有非常活跃的开发人员和用户‎‎社区‎‎。它现在是一个独立的开源项目,独立于任何公司维护。为了强调这一点,并澄清项目的治理结构,Prometheus于2016年加入‎‎云原生计算基金会‎‎,成为‎‎继Kubernetes‎‎之后的第二个托管项目。

Stephen_Daa的博客 892

ai数字人系统部署

这段代码实现了基本的语音交互闭环,用户通过语音输入问题,数字人识别语音后进行自然语言理解并生成回复,再将回复转换为语音输出。但实际应用中的 AI 数字人系统更为复杂,如形象渲染需专业图形引擎(如 Unity、Unreal Engine),自然语言处理也会涉及更复杂的模型微调及多轮对话管理等。一个完整的 AI 数字人系统涵盖形象生成、自然语言处理、动作控制等多个复杂功能,下面为你提供一个 Python 示例,整合多个库来实现数字人基础功能,包括语音交互、简单的自然语言理解以及通过虚拟形象展示对话。

weixin_ggwwsscc的博客 368

Docker Compose 一键部署 Prometheus + Alertmanager + Grafana 完整监控方案

Docker 是一个开源的应用容器引擎,基于Go 语言 并遵从 Apache2.0 协议开源Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

weixin_74403828的博客 1102

【网络】Ikuai中如何添加/更换虚拟机(图文)

Ikuai 添加虚拟机教程

qq_20623849的博客 6533

电拖笔记1电磁学基本知识与定律

电拖学习

qq458629839的博客 1131

《Linux运维总结:基于x86_64架构CPU使用docker-compose一键离线部署prometheus+grafana+alertmanager之监控告警系统》

《Linux运维总结:基于x86_64架构CPU使用docker-compose一键离线部署prometheus+grafana+alertmanager之监控告警系统》

东城绝神 1148

银河麒麟V10系统下,手把手解决Ollama安装报错‘GLIBCXX_3.4.25 not found’

本文详细介绍了在银河麒麟V10系统下解决Ollama安装报错‘GLIBCXX_3.4.25 not found’的实战指南。通过隔离编译新版libstdc++、环境变量引导和服务化封装等安全方案,确保在不破坏系统稳定性的前提下顺利运行Ollama,适用于国产操作系统与AI工具的兼容性需求。

weixin_42556197的博客 482

一键部署Prometheus+Grafana+alertmanager对网站状态进行监控

本文介绍使用Docker-compose一键部署Prometheus+Grafana+Alertmanager+Blackbox_exporter实现站点监控。通过克隆GitHub项目、启动容器、配置权限等步骤,快速搭建监控系统。主要组件包括Prometheus(9090端口)、Grafana(3000端口,默认admin/admin)、Alertmanager(9093端口)等。部署完成后需在Grafana添加Prometheus数据源并导入9965模板,通过修改blackbox目录下的配置文件调整监控站

https://ophome.blog.youkuaiyun.com,在IT行业有多年的工作经验,尤其是在Python、Linux、负载均衡、Nginx和服务器运维等领域。 889

Tessent实战:网表扫描链插入全流程解析

本文详细解析了使用Tessent工具为网表插入扫描链(Scan Chain)的全流程。从前期环境配置、网表检查,到扫描链数量、时钟域等核心配置,再到执行扫描单元替换与连接,最后进行结果验证与文件输出。文章提供了关键命令与实用技巧,帮助工程师高效完成DFT设计,确保芯片可测试性。

hhh00的博客 744

【Docker】完美解决拉取镜像超时报错:ERROR: Get https://registry-1.docker.io/v2/

因为我们下载的镜像是外网的镜像资源,所以下载的速度会非常的慢,甚至大概率下载时会报错,所以需要我们配置一个国内的服务器镜像地址,国内服务器镜像地址有很多,这里咱们就说一下阿里镜像加速器的配置方法。

liu_chen_yang的博客 12万+

从零搭建监控系统:基于Prometheus与Grafana的实践指南

监控系统是现代IT基础设施可观测性的核心组件,它通过持续采集、存储和分析系统指标、日志与追踪数据,帮助运维团队实时洞察系统状态。其工作原理通常基于客户端主动暴露或服务端拉取模式,配合时序数据库实现高效存储与查询。在技术价值层面,监控系统能够实现故障快速发现、性能瓶颈定位、容量规划支持以及业务连续性保障。典型应用场景包括服务器资源监控、微服务链路追踪、物联网设备数据采集以及业务关键指标观测。本文以Prometheus和Grafana为例,详细演示如何通过Docker Compose快速部署一套完整的监控栈,涵

weixin_34293141的博客 710

利用自己的域名和cloudflare实现邮件转发(无限邮箱注册cursor使用账号) 保姆级图文

大家喜欢的话,给个👍,点个关注!给大家分享更多计算机专业学生的求学之路!发现你走远了@mzh原创作品,转载必须标注原文链接欢迎关注『发现你走远了』 专栏,持续更新中欢迎关注『发现你走远了』 专栏,持续更新中『未完待续』

MZH 413

5分钟搞定!Docker Compose一键部署Prometheus+Grafana监控系统(附避坑指南)

本文详细介绍了如何使用Docker Compose快速部署Prometheus+Grafana监控系统,包括环境准备、配置、启动验证及常见问题解决方案。通过一键部署和预置仪表盘,帮助开发者快速搭建高效的监控告警系统,适用于微服务架构下的资源监控与管理。

rgv2345678的博客 190

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

基于Prometheus+Grafana的企业级监控体系搭建实战:从原理到生产环境部署

通过本文的 Docker Compose 方案,你可以在 5 分钟内启动一套功能完备的 Prometheus + Grafana 监控栈。但这只是起点,要构建真正的企业级可观测平台,还需要持续扩展:- 集成应用指标:基于 Micrometer、Prometheus Client 暴露业务指标- 日志与链路:结合 Loki、Tempo 实现全栈可观测性- 自动发现:利用 Kubernetes SD、Consul 等完成动态抓取配置。

huozhe01的博客 236

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

架构实战:1 小时搭建Java微服务指标监控体系(Prometheus+Grafana 落地指南)

1 小时搞定 Java 微服务全链路监控!从应用埋点到数据库监控,Prometheus+Grafana 实战指南 + 生产级优化,架构必备落地方案~

递归尽头是星辰 1054

Docker+prometheus+alertmanager+Grafana及自定义监控告警系统

快速帮你学会Docker+Prometheus+Alertmanager+Grafana搭建告警体系,Prometheus中配置警报规则,将警报发送到Alertmanager,Alertmanager发送通知有多种方式,其内部集成了邮箱、钉钉等多种方式,也提供了webhook的方式来扩展报警通知方式,网上也有大量例子实现对第三方软件的集成,如企业微信、飞书等。本文介绍邮件、钉钉报警方式和通过使用java来搭建webhook自定义通知报警的方式。

qq_45095100的博客 415

Docker 实战:手把手全容器化搭建 Prometheus 企业级监控系统,从镜像构建到编排部署全流程

本文详细介绍了基于Docker和DockerCompose的Prometheus监控栈全容器化部署方案。首先解析了Prometheus、NodeExporter、Alertmanager和Grafana四大核心组件的功能定位,然后从零开始完成每个组件的自定义镜像构建,包括详细的Dockerfile编写和镜像构建过程。通过DockerCompose编排文件实现了一键部署,并对服务状态验证、Grafana初始配置以及生产环境注意事项进行了详细说明。该方案不仅搭建了完整的监控系统,还深入讲解了容器化原理和运维要点

2301_81415662的博客 313

终极指南:Dockprom如何实现Docker容器健康监控与可用性保障

Dockprom是一个Docker化的监控栈集合,包括Prometheus、Grafana、Alertmanager、Node Exporter等多个组件,旨在简化在容器环境下搭建一套完整的监控系统的流程。通过Dockprom,用户可以快速部署全面的Docker监控解决方案,实现对容器和主机的实时健康监控与可用性保障。 ## 为什么选择Dockprom进行Docker监控? 在容器化应用日益普

gitblog_00045的博客 495

Prometheus-Basics架构解析:核心组件与工作原理可视化教程

Prometheus-Basics是Prometheus文档的重要组成部分,旨在帮助新手快速掌握Prometheus监控系统的核心架构与工作原理。本文将通过直观的可视化图表和实例操作,带你深入了解Prometheus的组件构成、数据流程及实际应用方法。 ## 一、Prometheus核心架构解析 Prometheus采用了基于时间序列数据的监控架构,其核心组件包括Prometheus Serv

gitblog_00770的博客 649

终极指南:Dockprom如何快速搭建完整的Docker监控系统 [特殊字符]

Dockprom是一个开源的Docker监控栈,它集成了Prometheus、Grafana、Alertmanager等核心组件,为容器化环境提供了一站式的监控解决方案。无论你是DevOps工程师还是系统管理员,这个项目都能帮你快速部署完整的监控体系。 ## 🔍 Dockprom架构深度解析 Dockprom采用模块化设计,通过Docker Compose编排各个监控组件: - **Pro

gitblog_00034的博客 341
上一篇: docker安装prometheus和Grafana
下一篇: Python 面试全套超级详细清单
唐僧不爱八戒
博客等级 码龄9年 158粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值