用途:指导安装并配置 gcx 命令行工具,使其连接到 Grafana 实例。支持三条路径:Grafana Cloud(Path A)、自建 Grafana(Path B)、CI/CD 环境变量(Path C)。
安装:先运行 gcx --version 检查是否已安装;未安装则从源码构建,需 git 和较新的 Go 工具链: tmp=$(mktemp -d) && git clone --depth 1 https://github.com/grafana/gcx.git "$tmp" && (cd "$tmp" && go install ./cmd/gcx) && rm -rf "$tmp"
配置模型:采用类似 kubectl kubeconfig 的上下文模型,分层 YAML 文件(默认用户文件 ~/.config/gcx/config.yaml)保存命名 stack、cloud 条目和引用 stack 的 context。同一时间只选中一个 context。可用 gcx config view 查看配置,gcx config check 校验活动上下文与连通性。
Grafana Cloud:无账号可运行 gcx signup cloud 打开注册页;已有账号可创建 stack 与 context(gcx config set stacks.cloud.grafana.server ...、gcx config set contexts.cloud.stack cloud),再用浏览器 OAuth(gcx login cloud --server ... --oauth)或服务账号令牌认证。Cloud 产品 API 需另配 Cloud Access Policy 令牌。
自建 Grafana:创建 stack 与 context 后,用 API 令牌或用户名密码认证(gcx login onprem --basic-auth --user admin --yes,密码经 GRAFANA_PASSWORD 提供),并设置 org-id(gcx config set stacks.onprem.grafana.org-id 1)。可选配置 TLS。
CI/CD:通过 GRAFANA_SERVER、GRAFANA_TOKEN、GRAFANA_ORG_ID 等环境变量在运行时覆盖所选 context 字段,不修改配置文件。
其他:可设置默认数据源 UID 避免每次传 -d;支持多上下文切换与单命令 --context;提供 401、403、连接失败、命名空间解析等排查方法。限制:agent 模式禁用交互提示;insecure-skip-verify 仅限开发;自动发现的 .gcx.yaml 不能附加运行时凭据。