1. Github
How to carea custom pulgin: github.com/grafana/plu…
2. Create Plugin
2.1 Troubleshooting
2.2 Docker Install Grafana
-
拉鏡像
docker pull grafana/grafana -
建容器
docker run --privileged=true -u=root -d -p 3000:3000 -v "$(pwd)"/grafana-plugins:/var/lib/grafana/plugins --name MyGrafana grafana/grafanadocker run --privileged=true -u=root -d -p 3000:3000 --name MyGrafana grafana/grafana
最後就是這個容器裡面什麼都要安裝,yum ,apt 等等什麼都沒有,麻煩
2.3 Docker phusion/baseimage
2.3.1 Install image
-
拉鏡像
docker pull phusion/baseimage舊版跑不起來了docker pull phusion/baseimage:bionic-1.0.0 -
建容器 ,給管理員權限,留下3000給grafana
docker run --privileged=true -u=root -d -p 3000:3000 --name MyUbuntu phusion/baseimage:bionic-1.0.0 -
升級包管理工具
apt updateapt-get updateapt-get install yum安裝apt-get install nodejs/apt-get upgrade nodejs升級apt-get install npm/apt-get upgrade npmapt-get remove package_name卸載
2.3.2 Install grafana
-
下载二进制包
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.4.7.linux-amd64.tar.gz -
解压文件
tar -zxvf grafana-enterprise-9.4.7.linux-amd64.tar.gz -
移动改名
mv grafana-9.4.7 /usr/local/grafana -
添加啟動服務
Redhat/Centos:
vim /usr/lib/systemd/system/grafana-server.serviceUbuntu:
vim /etc/systemd/system/grafana-server.service -
启动命令
systemctl enable grafana-server.servicesystemctl start grafana-server.servicesystemctl restart grafana-server.servicesystemctl status grafana-server.servicesystemctl stop grafana-server.service
grafana-server.service
[Unit]
Description=Grafana
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/grafana/bin/grafana-server
Restart=always
[Install]
WantedBy=multi-user.target
2.3.3 Install grafana plugin
-
下载npx
npm install -g npxnpx -v -
卸載
npm uninstall xxxx -gnpm cache clean -f -
加載插件,cd進入install
npx @grafana/create-plugin@latestnpm installnpm run dev
把路走死了。。。。。。
2.4 Other Docker Image
2.4.1 Install Image and other tools
-
Centos(OK)
docker pull centos:7docker run --privileged=true -u=root -d -p 3000:3000 --name MyCentos centos:7 /usr/sbin/init -
Redhat,要登錄docker(NG)
docker pull redhat/rhel7:latestdocker run --privileged=true -u=root -d -p 3000:3000 --name MyRedhat redhat/rhel7:latest /usr/sbin/init -
下載wegt,安裝yum源(阿里)
yum -y install wgetwget http://mirrors.aliyun.com/repo/Centos-7.repo -
下載epel.repo,安裝nodejs
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repoyum install nodejsnode -v -
安裝npm,npx
yum install npmnpm install npxnpm -v/npx -v
2.4.2 Install grafana
-
下载二进制包
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.4.7.linux-amd64.tar.gz -
解压文件
tar -zxvf grafana-enterprise-9.4.7.linux-amd64.tar.gz -
移动改名
mv grafana-9.4.7 /usr/local/grafana -
添加啟動服務
vim /usr/lib/systemd/system/grafana-server.service -
启动命令
systemctl enable grafana-server.servicesystemctl start grafana-server.servicesystemctl restart grafana-server.servicesystemctl status grafana-server.servicesystemctl stop grafana-server.service -
密碼
admin@123
grafana-server.service
[Unit]
Description=Grafana
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/grafana/bin/grafana-server -homepath /usr/local/grafana
Restart=on-failure
[Install]
WantedBy=multi-user.target
2.5 Custom Plugin
2.5.1 Register Grafana cloud
Tomcat@123
2.5.2 Plugin
-
加載插件,cd進入install
npx @grafana/create-plugin@latest -
進入目錄cd
npm installnpm run dev
2.5.3 Portainer
-
創建Volume
docker volume create portainer_datadocker volume ls -
拉Portainer鏡像
docker pull portainer/portainerdocker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data --name MyPortainer portainer/portainer -
登錄,設密碼
http://localhost:9000admin@12345678
2.5.4 Grafana Config
进入conf目录复制一份sample.ini并重命名为custom.ini。以后所有的配置应该编辑custom.ini,永远不要去修改defaults.ini。
-
Copy ini
cp sample.ini custom.ini -
Config grafana
yum install vimAPP_MODE默認为production,如果想要强制加载unsigned插件,可以向custom.ini中添加GF_DEFAULT_APP_MODE=development
-
重啟服務,不出意外,還是不行
systemctl restart grafana-server.service
-
直接改配置,就能加載了
app_mode = developmentsystemctl restart grafana-server.service
2.5.5 Sign a plugin
-
如果docker中還不行,編輯ini文件,添加如下兩項
etc/grafana/grafana.iniGF_SERVER_HTTP_PORT=80GF_SERVER_HTTP_PORT=3000 -
命令行生成注册文件时使用
yarn sign --rootUrls http://localhost:3000,http://localhost:80,http://localhost
2.6 React
-
docker cp folder
docker cp mycontainer:/file.txt C:\path\to\destination\file.txt
3. RPM package
如果有些軟件要離線安裝,可以現在鏡像裡面的包,如果有yum,apt可忽略