mirror of
https://github.com/grafana/grafana.git
synced 2025-07-30 21:42:37 +08:00

* Feature: Introduce a grafana-cli wrapper When our users install the *nix packed version of grafana, tendency is to use the services and scripts installed as part of the package for grafana-server. These leverage the default configuration options by specifying the several default paths. This introduces a similar approach for the grafana-cli binary. We exposed it through a wrapper to ensure a proper configuration is in place. To enable that, we add the .real suffix to the original binary (grafana-cli.real) and then use a bash script named grafana-cli as the wrapper. * Make the config and homepath flags global * Introduce `configOverrides` as a global flag This flag allows us to pass configuration overrides as a string. The string follows the convention of configuration arguments separated by a space e.g. "cfg:default.paths.data=/dev/nullX cfg:default.paths.logs=/dev/nullX" Also, it is backwards compatible with similar the previous configuration method through tailing arguments. Tailing arguments take presedence over the configuration options string. * Only log configuration information in debug mode * Move the grafana-cli binary to $GRAFANA_HOME/bin As part of the package install process, we copy all the release files and directories into the grafana home directory. This includes the /bin folder from where we copied the binaries into their respective destinations. After that, the /bin folder gets deleted as we don't want to keep duplicates of the binaries around. As part of this commit, we moved the re-creation of /bin within grafana-home and the copy of the original binary (again) after the folder gets deleted.
51 lines
1.7 KiB
Markdown
51 lines
1.7 KiB
Markdown
+++
|
|
title = "Grafana CLI"
|
|
description = "Guide to using grafana-cli"
|
|
keywords = ["grafana", "cli", "grafana-cli", "command line interface"]
|
|
type = "docs"
|
|
[menu.docs]
|
|
parent = "admin"
|
|
weight = 8
|
|
+++
|
|
|
|
# Grafana CLI
|
|
|
|
Grafana cli is a small executable that is bundled with Grafana-server and is supposed to be executed on the same machine Grafana-server is running on.
|
|
|
|
## Plugins
|
|
|
|
The CLI allows you to install, upgrade and manage your plugins on the machine it is running on.
|
|
You can find more information about how to install and manage your plugins in the
|
|
[plugins page]({{< relref "../plugins/installation.md" >}}).
|
|
|
|
## Admin
|
|
|
|
> This feature is only available in Grafana 4.1 and above.
|
|
|
|
To show all admin commands:
|
|
`grafana-cli admin`
|
|
|
|
### Reset admin password
|
|
|
|
You can reset the password for the admin user using the CLI. The use case for this command is when you have lost the admin password.
|
|
|
|
`grafana-cli admin reset-admin-password ...`
|
|
|
|
If running the command returns this error:
|
|
|
|
> Could not find config defaults, make sure homepath command line parameter is set or working directory is homepath
|
|
|
|
then there are two flags that can be used to set homepath and the config file path.
|
|
|
|
`grafana-cli --homepath "/usr/share/grafana" admin reset-admin-password newpass`
|
|
|
|
If you have not lost the admin password then it is better to set in the Grafana UI. If you need to set the password in a script then the [Grafana API](http://docs.grafana.org/http_api/user/#change-password) can be used. Here is an example using curl with basic auth:
|
|
|
|
```bash
|
|
curl -X PUT -H "Content-Type: application/json" -d '{
|
|
"oldPassword": "admin",
|
|
"newPassword": "newpass",
|
|
"confirmNew": "newpass"
|
|
}' http://admin:admin@<your_grafana_host>:3000/api/user/password
|
|
```
|