
从GitHub API提取仓库基本指标,并暴露到Prometheus兼容的端点。
导出器通过环境变量进行配置,所有变量均为可选:
| 环境变量 | 描述 |
|---|---|
ORGS | 如果提供,导出器将枚举该组织的所有仓库。格式应为"org1, org2"。 |
REPOS | 如果提供,指定要监控的仓库,格式为"user/repo1, user/repo2",可跨不同GitHub用户/组织。 |
USERS | 如果提供,导出器将枚举该用户的所有仓库。格式应为"user1, user2"。 |
GITHUB_TOKEN | GitHub认证令牌,允许更高频率的API查询。可选但推荐提供。 |
GITHUB_TOKEN_FILE | 替代GITHUB_TOKEN,指定包含GitHub认证令牌的文件路径。可选但推荐提供。 |
API_URL | GitHub API URL,默认值为https://api.github.com,通常无需修改。 |
LISTEN_PORT | 容器运行端口,Dockerfile默认值为9171。 |
METRICS_PATH | 指标URL路径,默认值为/metrics。 |
LOG_LEVEL | 日志级别,默认值为debug。 |
适用于需要将GitHub仓库数据(如提交、分支、PR等指标)集成到Prometheus监控系统的场景,支持:
bashdocker run -d --restart=always -p 9171:9171 -e REPOS="infinityworks/ranch-eye, infinityworks/prom-conf" githubexporter/github-exporter
bashdocker build -t <镜像名称> . docker run -d --restart=always -p 9171:9171 -e REPOS="infinityworks/ranch-eye, infinityworks/prom-conf" <镜像名称>
yamlgithub-exporter: tty: true stdin_open: true expose: - 9171 ports: - 9171:9171 image: githubexporter/github-exporter:latest environment: - REPOS=<要监控的仓库,格式为"user/repo1, user/repo2"> - GITHUB_TOKEN=<你的GitHub API令牌>
指标默认在9171端口可用。指标示例可在仓库根目录的METRICS.md文件中查看。
test目录中包含一组黑盒行为测试,用于验证指标端点。运行方式如下:
bashmake test
当新的拉取请求合并到master分支后,需在本地执行以下脚本。该脚本将触发Docker Hub上的新镜像构建,新镜像标签为release-<version>。版本号取自VERSION文件,且必须遵循语义化版本规范(详见semver.org)。
在执行以下命令前,确保已将VERSION文件中的版本号更新至所需版本:
bash./release-version.sh
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务