Docker下安装Influxdb和Grafana
下载influxdb
docker pull influxdb
启动Influxdb
docker run -d -p 8083:8083 -p 8086:8086 --name yw_influxdb influxdb
进入docker镜像:
docker exec -it yw_influxdb bash
进入/usr/bin目录,这里面有Influxdb的工具
root@3ae7203adc87:/usr/bin# find | grep influx ./influx ./influx_inspect ./influx_stress ./influx_tsm ./influxd
查看Influxdb版本
./influx -version
进入Influxdb客户端命令行
创建数据库
> create database my_test > show databases name: databases name ---- _internal my_test
删除数据库
drop database [db_name]
使用数据库
> use my_test Using database my_test
现在写个定时程序,不断向数据库添加数据
建立一个SpringBoot工程
导入依赖
1 2 3 4 5 6 | <!--influxdb--> <dependency> <groupId>org.influxdb</groupId> <artifactId>influxdb-java</artifactId> <version> 2.12 </version> </dependency> |
入口类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | package com.yw.influxdb; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.Scheduled; import java.util.Random; @SpringBootApplication @EnableScheduling public class InfluxdbApplication { public static void main(String[] args) { SpringApplication.run(InfluxdbApplication. class , args); } @Scheduled (fixedRate = 1000 ) public void doInsert(){ Random random = new Random(); TestInfluxdb.insert(random.nextInt( 1000 )); } } |
Influxdb类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | package com.yw.influxdb; import org.influxdb.InfluxDB; import org.influxdb.InfluxDBFactory; import org.influxdb.dto.Point; public class TestInfluxdb { public static void insert( int num){ InfluxDB db = InfluxDBFactory.connect( "http://ip:8086" , "admin" , "admin" ); db.setDatabase( "my_test" ); // 设置数据库 Point.Builder builder = Point.measurement( "test_demo" ); // 创建Builder,设置表名 builder.addField( "count" ,num); // 添加Field builder.tag( "TAG_CODE" , "TAG_VALUE_" + num); // 添加Tag Point point = builder.build(); db.write(point); } } |
当你启动,每隔1秒自动向数据库添加
这个时候,显示表列表
> show measurements
name: measurements
name
----
test_demo
>
查看表
删除表
drop measurement 【measurement_name】
第二步、安装Grafana
1 | docker pull grafana/grafana |
运行
docker run -d -p 3000:3000 --name yw_grafana grafana/grafana
访问http://ip:3000
账号密码:admin/admin,进去之后让你修改密码
进入页面
添加数据源
然后点击,选择Home
over
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现