arm64v8/telegraf注意:这是 telegraf 官方镜像 的 arm64v8 架构构建的“每架构”仓库——更多信息请参见官方镜像文档中的“非 amd64 架构?”以及官方镜像 FAQ 中的“Git 中镜像源已更改,该怎么办?”。
维护者:
InfluxData
获取帮助:
Docker 社区 Slack、Server Fault、Unix & Linux 或 Stack Overflow
1.34, 1.34.4
1.34-alpine, 1.34.4-alpine
1.35, 1.35.4
1.35-alpine, 1.35.4-alpine
1.36, 1.36.2, latest
1.36-alpine, 1.36.2-alpine, alpine
问题提交地址:
[***]
支持的架构:(更多信息)
amd64、arm32v7、arm64v8
已发布镜像 artifact 详情:
repo-info 仓库的 repos/telegraf/ 目录(历史记录)
(镜像元数据、传输大小等)
镜像更新:
official-images 仓库的 library/telegraf 标签
official-images 仓库的 library/telegraf 文件(历史记录)
本描述的来源:
docs 仓库的 telegraf/ 目录(历史记录)
Telegraf 是一款开源代理程序,用于收集、处理、聚合和写入指标。它基于插件系统,使社区开发者能够轻松添加对额外指标收集的支持。插件分为五种不同类型:
Telegraf 官方文档
!logo
使用该镜像需提供有效的配置文件,配置文件至少需指定一个输入插件和一个输出插件。以下将介绍基本使用步骤。
配置文件是基于 TOML 格式的文件,用于声明使用哪些插件。一个非常简单的配置文件 telegraf.conf(从系统 CPU 收集指标并输出到标准输出)如下:
toml[[inputs.cpu]] [[outputs.file]]
用户拥有自定义配置文件后,可通过挂载配置文件到预期位置启动 Telegraf 容器:
console$ docker run -v $PWD/telegraf.conf:/etc/telegraf/telegraf.conf:ro arm64v8/telegraf
将 $PWD 修改为存储配置文件的目录。
更多关于 Telegraf 配置的信息请参见此处。
用户可使用 config 子命令生成示例配置,该配置包含少量已启用的系统指标输入插件,但仍需至少配置一个输出插件才能使用:
console$ docker run --rm arm64v8/telegraf telegraf config > telegraf.conf
以下是 Telegraf 可用的各类插件链接:
Telegraf 的一个常见用例是从容器内监控 Docker 引擎主机。推荐的方法是将主机文件系统挂载到容器中,并通过环境变量指示 Telegraf 定位文件系统。
不同插件所需挂载的文件不同,以下示例展示了完整的支持路径:
console$ docker run -d --name=telegraf \ -v $PWD/telegraf.conf:/etc/telegraf/telegraf.conf:ro \ -v /:/hostfs:ro \ -e HOST_ETC=/hostfs/etc \ -e HOST_PROC=/hostfs/proc \ -e HOST_SYS=/hostfs/sys \ -e HOST_VAR=/hostfs/var \ -e HOST_RUN=/hostfs/run \ -e HOST_MOUNT_PREFIX=/hostfs \ arm64v8/telegraf
要监控其他 Docker 容器,可使用 docker 插件并将 docker socket 挂载到容器中。配置示例如下:
toml[[inputs.docker]] endpoint = "unix:///var/run/docker.sock"
然后启动 telegraf 容器:
console$ docker run -d --name=telegraf \ --net=influxdb \ -v /var/run/docker.sock:/var/run/docker.sock \ -v $PWD/telegraf.conf:/etc/telegraf/telegraf.conf:ro \ arm64v8/telegraf
更多信息请参见 docker 插件文档。
部分插件需要安装额外软件包,例如 ntpq 插件需要 ntpq 命令。建议创建自定义衍生镜像来安装所需命令。
以下示例 Dockerfile 向基础镜像添加 mtr-tiny 并保存为 telegraf-mtr.docker:
dockerfileFROM telegraf:1.12.3 RUN apt-get update && apt-get install -y --no-install-recommends mtr-tiny && \ rm -rf /var/lib/apt/lists/*
构建衍生镜像:
console$ docker build -t telegraf-mtr:1.12.3 - < telegraf-mtr.docker
创建 telegraf.conf 配置文件:
toml[[inputs.exec]] interval = "60s" commands=["mtr -C -n example.org"] timeout = "40s" data_format = "csv" csv_skip_rows = 1 csv_column_names=["", "", "status", "dest", "hop", "ip", "loss", "snt", "", "", "avg", "best", "worst", "stdev"] name_override = "mtr" csv_tag_columns = ["dest", "hop", "ip"] [[outputs.file]] files = ["stdout"]
运行衍生镜像:
console$ docker run --name telegraf --rm -v $PWD/telegraf.conf:/etc/telegraf/telegraf.conf telegraf-mtr:1.12.3
arm64v8/telegraf 镜像有多种变体,适用于不同场景。
arm64v8/telegraf:<version>这是默认镜像。如果不确定需求,建议使用此版本。它既可作为临时容器(挂载源代码并启动容器运行应用),也可作为构建其他镜像的基础。
arm64v8/telegraf:<version>-alpine此镜像基于流行的 Alpine Linux 项目(可在 alpine 官方镜像 中获取)。Alpine Linux 比大多数发行版基础镜像小得多(约 5MB),因此生成的镜像通常更精简。
当首要关注点是最小化最终镜像大小时,此变体非常有用。需要注意的是,它使用 musl libc 而非 glibc 及相关库,因此软件可能因 libc 依赖/假设而出现问题。更多讨论参见 此 Hacker News 评论线程。
为最小化镜像大小,Alpine 基础镜像通常不包含额外相关工具(如 git 或 bash)。如需使用此类工具,可基于此镜像在自己的 Dockerfile 中添加(不熟悉如何安装软件包可参见 alpine 镜像描述 中的示例)。
查看此镜像中包含的软件的 许可证信息。
与所有 Docker 镜像一样,本镜像可能还包含其他软件,这些软件可能采用其他许可证(例如基础发行版中的 Bash 等,以及主要软件的任何直接或间接依赖项)。
部分可自动检测的额外许可证信息可能位于 repo-info 仓库的 telegraf/ 目录 中。
对于任何预构建镜像的使用,镜像用户有责任确保对本镜像的任何使用均符合其中包含的所有软件的相关许可证。


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务