开始使用
欢迎来到 Grafana 插件创建的世界,在这里您可以增强 Grafana 的基础功能。本指南将教您如何通过搭建插件框架、在高效的开发环境中运行插件以及使用其基本功能来开始使用。
观看我们的介绍视频,了解开始创建您的第一个 Grafana 插件的分步指南。本视频教程是对下方详细说明的补充,并提供实用的见解,助您一臂之力。
快速开始
使用一个命令即可搭建新的插件框架!运行以下命令并回答提示问题
- npm
- Yarn
- pnpm
npx @grafana/create-plugin@latest
yarn dlx @grafana/create-plugin@latest
pnpm dlx @grafana/create-plugin@latest
为什么要创建 Grafana 插件?
Grafana 插件开发允许您创建多种不同的用户体验。例如,您可以创建
- 面板插件 - 数据可视化新方式
- 数据源插件 - 连接新的数据库或其他数据源
- 应用插件 - 集成式开箱即用体验
如果这是您第一次创建插件,建议您先熟悉插件类型、后端插件、数据帧等基础知识。了解更多关于Grafana 插件开发的关键概念。
Grafana 插件分类
建议您熟悉 Grafana 插件的标志性分类,例如私有插件和公共插件的区别。请注意,如果您想将与商业产品相关的插件发布到 Grafana 官方目录,通常需要付费订阅。了解更多关于我们的插件政策。
使用插件工具更快地开发您的插件
Grafana 的插件工具提供了一种官方支持的方式来扩展 Grafana 的核心功能。我们设计这些工具是为了帮助您使用现代构建设置更快地开发插件,无需额外配置。
插件工具包含两个包
create-plugin
:一个 CLI 工具,用于搭建新插件或迁移使用@grafana/toolkit
创建的插件。sign-plugin
:一个用于签名插件以便分发的 CLI 工具。
如果您之前使用 @grafana/toolkit
构建过插件,您可以使用我们的插件工具迁移到我们最新的工具。有关更多信息,请参阅从 toolkit 迁移。
开始之前
确保您正在使用支持的操作系统、Grafana 版本和工具。
支持的操作系统
Grafana 插件工具支持以下操作系统
- Linux
- macOS
- Windows 10+ 并带有 WSL (Windows 子系统 for Linux)
支持的 Grafana 版本
我们通常建议您针对 v10.0 或更高版本的 Grafana 进行构建。有关使用 Grafana 进行开发时的要求和依赖项的更多信息,请参阅Grafana 开发者指南。
推荐工具
您需要设置以下工具
支持的包管理器
当您首次运行 @grafana/create-plugin
时,选择您的包管理器:npm
、pnpm
或 yarn
。
::: note 本网站上的 Yarn 命令与 Yarn Berry (>=2.0.0) 兼容。如果您使用的是 Yarn 1.x.x,建议您升级到 Yarn Berry。或者,您可以使用 yarn create @grafana/plugin
来运行 Yarn 1.x.x 的命令。::
搭建插件框架
运行 create-plugin
工具
运行以下命令并回答提示问题
- npm
- Yarn
- pnpm
npx @grafana/create-plugin@latest
yarn dlx @grafana/create-plugin@latest
pnpm dlx @grafana/create-plugin@latest
有关提示问题的帮助,请参阅CLI 命令。
打开生成的文件夹结构
打开插件文件夹以浏览生成的插件
目录名称 <orgName>-<pluginName>-<pluginType>
基于您对提示问题的回答。在提示时使用生成的文件夹名称。此目录包含启动插件开发的初始项目结构。
文件结构应如下所示
<orgName>-<pluginName>-<pluginType>
├── .config/
├── .eslintrc
├── .github
│ └── workflows
├── .gitignore
├── .nvmrc
├── .prettierrc.js
├── CHANGELOG.md
├── LICENSE
├── Magefile.go
├── README.md
├── cypress
│ └── integration
├── docker-compose.yaml
├── go.mod
├── go.sum
├── jest-setup.js
├── jest.config.js
├── node_modules
├── package.json
├── pkg
│ ├── main.go
│ └── plugin
├── src
│ ├── README.md
│ ├── components
│ ├── datasource.ts
│ ├── img
│ ├── module.ts
│ ├── plugin.json
│ └── types.ts
└── tsconfig.json
有关这些文件的更多信息,请参阅插件的构成。
在 Docker 中构建并运行您的插件
使用 create-plugin
工具,您可以使用 Docker 容器来简化配置、加载和开发过程。有关更多信息,请参阅设置开发环境。
请参阅搭建新插件框架后的“下一步”终端输出,以安装依赖项、构建并运行您的插件。
示例输出
## What's next?
Run the following commands to get started:
* cd ./orgName-pluginName-app
* npm install to install frontend dependencies.
* npm exec playwright install chromium to install e2e test dependencies.
* npm run dev to build (and watch) the plugin frontend code.
* mage -v build:backend to build the plugin backend code. Rerun this command every time you edit your backend files.
* docker compose up to start a grafana development server.
* Open https://:3000 in your browser to create a dashboard to begin developing your plugin.
Note: We strongly recommend creating a new Git repository by running git init in ./org-pluginname-app before continuing.
* Learn more about Grafana Plugin Development at https://grafana.org.cn/developers/plugin-tools
安装依赖项
- npm
- Yarn
- pnpm
cd <orgName>-<pluginName>-<pluginType>
npm install
cd <orgName>-<pluginName>-<pluginType>
yarn install
cd <orgName>-<pluginName>-<pluginType>
pnpm install
构建前端
要在开发模式下构建插件并进行监视,持续监听更改,请运行
- npm
- Yarn
- pnpm
npm run dev
yarn dev
pnpm run dev
要进行生产构建,请运行
- npm
- Yarn
- pnpm
npm run build
yarn build
pnpm run build
构建后端
如果您的插件包含后端组件,您可以使用 mage 进行构建
mage -v build:linux
构建目标
选项 | 描述 | 示例 |
---|---|---|
build:[arch] | 为特定架构构建二进制文件。 | mage -v build:Linux |
列出所有可用的 Mage 目标以获取额外命令
mage -l
运行 Grafana 服务器
要使用 Docker 启动 Grafana 开发服务器,请运行
docker compose up --build
恭喜!您刚刚搭建了第一个插件框架,现在可以通过https://:3000 访问它。