装完 grafana-server 不等于有面板,面板需在 web 界面手动创建或导入;apt/yum 安装适合生产环境,docker 启动需挂载 /var/lib/grafana 才持久化;登录后空白多因防火墙、selinux 或数据源 access 模式配置错误。

装完 grafana-server 不等于有面板——面板(dashboard)是运行起来后在 Web 界面里创建或导入的 UI 组件,不是安装包自带的。很多人卡在“装完了却看不到任何图表”,本质是混淆了服务和界面资源。
用 APT/YUM 安装 grafana-server(生产环境首选)
包管理器安装自动处理依赖、配置路径、systemd 服务单元和默认权限,后续升级、启停、日志排查都省心。手动下载 .deb/.rpm 后用 dpkg -i 或 rpm -ivh 容易漏掉 systemctl daemon-reload,导致 systemctl start grafana-server 报 “unit not found”。
- Ubuntu/Debian:别装
grafana-enterprise,OSS 版本功能完整,企业版要 license - CentOS/RHEL:用
dnf install grafana(8+)或yum install grafana(7),别直接rpm -Uvh下载的包——会跳过 GPG 校验,可能引入篡改风险 - 装完必须立刻执行
sudo systemctl daemon-reload,否则服务无法识别
用 Docker 运行 grafana-server(开发/测试更安全)
Docker 启动最快,但默认不持久化——容器一删,所有用户、数据源、面板全丢。不挂载 /var/lib/grafana 就等于白配。
- 基础命令:
docker run -d --name grafana -p 3000:3000 grafana/grafana:10.4.0 - 带持久化(必须):
docker run -d --name grafana -p 3000:3000 -v /opt/grafana-data:/var/lib/grafana grafana/grafana:10.4.0 - 别用
:latest上生产:v10 默认禁用匿名访问,v9 还开着,镜像更新可能直接导致登录失败
启动后看不到面板?先查这三件事
登录 http://<ip>:3000</ip>(默认账号密码 admin/admin)后空白或 404,90% 不是安装问题,而是环境拦截。
- 防火墙没放行 3000 端口:
sudo ufw status(Ubuntu)或sudo firewall-cmd --list-ports(RHEL)确认是否开放 - SELinux 强制限制(RHEL/CentOS):
sudo setsebool -P httpd_can_network_connect 1,否则 Grafana 无法连 Prometheus 等后端数据源 - 浏览器缓存或代理干扰:换无痕窗口或 curl 测试
curl -v http://localhost:3000/api/health,返回{"commit":"...","version":"10.4.0"}才说明服务真起来了
面板本身要手动配数据源再导入
Grafana 安装包不含任何预置 dashboard,所有可视化都依赖你先添加数据源(如 Prometheus、InfluxDB),再从官方库导入 ID(比如 1860 是 Node Exporter 面板)或手动新建。
- 数据源配置关键项:
URL填对(如http://localhost:9090),Access选Server(而非 Browser),否则跨域失败 - 导入面板时注意版本兼容性:v10 的 dashboard JSON 可能含 v9 不支持的字段,导入失败就去 Grafana Dashboards 页面筛选对应 Grafana 版本
- 别反复重置 admin 密码:首次登录强制修改后,密码存在 SQLite 数据库里(默认
/var/lib/grafana/grafana.db),删容器不删挂载卷就不会丢
最常被忽略的是 SELinux 和数据源 Access 模式——这两处出问题,服务明明 running,页面却一直转圈或报 “Data source is not available”。











