
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Grafana Publisher 是一个用于将插件发布到 grafana.com 的工具,支持通过命令行或在 CircleCI 环境中运行。该工具提供了一系列命令,覆盖插件发布流程的各个环节,包括环境验证、信息查询、暂存发布和正式发布等功能。
运行不带参数的应用程序将显示帮助信息:
bashdocker run grafana/integration-plugin-publisher:latest
| 选项 | 缩写 | 描述 |
|---|---|---|
| --version | -V | 输出版本号 |
| --auto | -a | 无交互模式运行,自动回答所有提示 |
| --log [logfile] | -l | 日志输出到文件 |
| --loglevel [info|debug] | 设置日志级别 (info 或 debug) | |
| --dryrun | -d | 试运行模式,不执行实际操作 |
| --help | -h | 显示帮助信息 |
| 环境变量 | 用途 |
|---|---|
| GCOM_PUBLISH_TOKEN | 具有发布权限的 grafana.com API 密钥 |
| GCOM_ADMIN_TOKEN | 具有管理员权限的 grafana.com API 密钥(仅用于 setdependency 命令,普通发布不需要) |
| GITHUB_TOKEN | 具有仓库读写权限的 GitHub API 令牌 |
| GCLOUD_SERVICE_KEY | 具有 GCS 集成 artifacts 存储桶写入权限的 JSON 密钥内容 |
这些变量值可在 1Password 中找到,并且在每个 CircleCI 项目中已预设。
| 命令 | 描述 |
|---|---|
| validate | 检测运行应用程序所需的环境设置 |
| info | 收集并显示指定本地插件的信息 |
| inforemote | 收集并显示指定远程插件的信息 |
| stage | 执行插件到暂存环境的发布(当前未实现) |
| stageremote | 执行远程插件到暂存环境的发布(当前未实现) |
| publish | 执行本地插件到生产环境的发布 |
| publishremote | 执行远程插件到生产环境的发布 |
| setdependency | 设置插件的 grafanaDependency 属性 (>=7.0.0 格式) |
| help | 显示命令帮助信息 |
validate
验证环境变量是否存在且能正常工作,dryrun 和 publish 命令会自动运行此验证。
bashdocker run \ -e GCOM_PUBLISH_TOKEN=$GCOM_PUBLISH_TOKEN \ -e GITHUB_TOKEN=$GITHUB_TOKEN \ -e GCLOUD_SERVICE_KEY=$GCLOUD_SERVICE_KEY \ grafana/integration-plugin-publisher:latest \ grafana-publisher.js validate
输出示例:
OK: Publish to GCOM Key found in environment setting OK: GCS Authentication found in environment setting OK: GIT Key found in environment setting [2020-07-25T05:51:54.047] [DEBUG] publisher - GCOM testing GET to https://grafana.com/api/plugins/table OK: GCOM is working Validation Successful
info
获取本地仓库中已发布插件的摘要信息,需要本地存在 plugin.json 文件且与插件 ID 匹配。
bashdocker run \ -v $(pwd):/workspace \ -w /workspace \ grafana/integration-plugin-publisher:latest \ grafana-publisher info grafana-newrelic-datasource dist/plugin.json 2.0.5
inforemote
获取已发布插件的摘要信息,通过插件 ID 标识,可指定版本(默认为最新版本)。
bashdocker run \ -e GITHUB_TOKEN=$GITHUB_TOKEN \ grafana/integration-plugin-publisher:latest \ grafana-publisher inforemote grafana-newrelic-datasource 2.0.5
publish
执行本地插件到生产环境的发布,这是应用程序的主要功能。
bashdocker run \ -v $(pwd):/workspace \ -w /workspace \ -e GCOM_PUBLISH_TOKEN=$GCOM_PUBLISH_TOKEN \ -e GITHUB_TOKEN=$GITHUB_TOKEN \ -e GCLOUD_SERVICE_KEY=$GCLOUD_SERVICE_KEY \ grafana/integration-plugin-publisher:latest \ grafana-publisher publish grafana-newrelic-datasource 2.0.5 dist/plugin.json
publishremote
通过指定仓库 URL 和版本号,无需本地检出代码即可将插件发布到生产环境。
bashdocker run \ -e GCOM_PUBLISH_TOKEN=$GCOM_PUBLISH_TOKEN \ -e GITHUB_TOKEN=$GITHUB_TOKEN \ -e GCLOUD_SERVICE_KEY=$GCLOUD_SERVICE_KEY \ grafana/integration-plugin-publisher:latest \ grafana-publisher publishremote https://github.com/grafana/grafana-polystat-panel 1.0.0
setdependency
设置插件的 grafanaDependency 属性,值的格式应为 >=7.0.0。
bashdocker run \ -e GCOM_PUBLISH_TOKEN=$GCOM_PUBLISH_TOKEN \ -e GCOM_ADMIN_TOKEN=$GCOM_ADMIN_TOKEN \ grafana/integration-plugin-publisher:latest \ grafana-publisher setdependency grafana-newrelic-datasource 2.0.5 '>=7.0.0'
bashdocker run \ -e GCOM_PUBLISH_TOKEN=$GCOM_PUBLISH_TOKEN \ -e GITHUB_TOKEN=$GITHUB_TOKEN \ -e GCLOUD_SERVICE_KEY=$GCLOUD_SERVICE_KEY \ grafana/integration-plugin-publisher:latest \ grafana-publisher validate
yaml# .circleci/config.yml 片段 jobs: publish-plugin: docker: - image: grafana/integration-plugin-publisher:latest environment: - GCOM_PUBLISH_TOKEN: $GCOM_PUBLISH_TOKEN - GITHUB_TOKEN: $GITHUB_TOKEN - GCLOUD_SERVICE_KEY: $GCLOUD_SERVICE_KEY steps: - checkout - run: name: Publish plugin to grafana.com command: grafana-publisher --auto --loglevel debug publish my-plugin-id $CIRCLE_TAG dist/plugin.json
bash# 测试发布(dryrun 模式) docker run \ -v $(pwd):/workspace \ -w /workspace \ -e GCOM_PUBLISH_TOKEN=$GCOM_PUBLISH_TOKEN \ -e GITHUB_TOKEN=$GITHUB_TOKEN \ -e GCLOUD_SERVICE_KEY=$GCLOUD_SERVICE_KEY \ grafana/integration-plugin-publisher:latest \ grafana-publisher --dryrun --loglevel debug publish grafana-newrelic-datasource 2.0.5 dist/plugin.json
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务