Garmin Grafana 项目使用教程
1. 项目目录结构及介绍
Garmin Grafana 项目包含以下目录和文件:
.github/
:包含项目的 GitHub 工作流和模板文件。Grafana_Dashboard/
:存放 Grafana 仪表板的 JSON 配置文件。docker-compose.yml
:Docker 的组合文件,用于定义和运行多容器 Docker 应用。Dockerfile
:用于构建 Docker 容器的指令文件。LICENSE
:项目的许可证文件,本项目采用 BSD-3-Clause 许可。README.md
:项目的自述文件,包含项目的基本信息和说明。compose-example.yml
:Docker 组合文件示例,用于参考和自定义项目配置。garmin-fetch.py
:Python 脚本,用于从 Garmin 服务器获取数据并存储到本地 InfluxDB 数据库。requirements.txt
:Python 项目的依赖文件,列出了项目运行所需的 Python 包。
2. 项目的启动文件介绍
项目的启动主要通过 docker-compose.yml
文件来配置和启动。以下是启动文件的简要说明:
garmin-fetch-data
:定义了用于获取 Garmin 数据的容器服务,包括使用的镜像、容器名称、依赖关系、卷绑定、环境变量等。influxdb
:定义了 InfluxDB 数据库的容器服务,包含数据库配置和相关环境变量。grafana
:定义了 Grafana 仪表板的容器服务,包括 Grafana 的配置和端口映射。
启动项目时,需要在项目目录下运行以下命令:
docker-compose up -d
该命令会以守护进程模式启动整个项目。
3. 项目的配置文件介绍
项目的配置主要通过 docker-compose.yml
文件中的环境变量来进行。以下是一些主要的配置项:
INFLUXDB_HOST
:InfluxDB 数据库的容器名称或地址。INFLUXDB_PORT
:InfluxDB 数据库的端口号。INFLUXDB_USERNAME
:InfluxDB 数据库的用户名。INFLUXDB_PASSWORD
:InfluxDB 数据库的密码。INFLUXDB_DATABASE
:InfluxDB 数据库的名称。GARMINCONNECT_EMAIL
:Garmin Connect 账户的电子邮件地址。GARMINCONNECT_BASE64_PASSWORD
:Garmin Connect 账户的 Base64 编码密码。UPDATE_INTERVAL_SECONDS
:更新 Garmin 数据的间隔时间,单位为秒。LOG_LEVEL
:日志级别,可以设置为INFO
或DEBUG
。
在使用前,需要根据实际情况修改 docker-compose.yml
文件中的相应环境变量值。如果需要持久化存储 Garmin 登录令牌,还需要配置 garmin_tokens_data
卷。