LinuxServer Docker Speedtest-Tracker 项目使用教程
docker-speedtest-tracker 项目地址: https://gitcode.com/gh_mirrors/do/docker-speedtest-tracker
1. 项目的目录结构及介绍
LinuxServer 的 Docker Speedtest-Tracker 项目是一个用于跟踪互联网性能的开源应用程序,它通过运行速度测试来检查与 Ookla Speedtest 服务的连接。以下是项目的目录结构及其简单介绍:
docker-speedtest-tracker/
├── .gitattributes
├── .gitignore
├── .editorconfig
├── Dockerfile
├── Dockerfile.aarch64
├── Jenkinsfile
├── LICENSE
├── README.md
├── package_versions.txt
├── readme-vars.yml
└── jenkins-vars.yml
.gitattributes
: 指定如何处理不同的文件类型。.gitignore
: 指定在 Git 仓库中应该忽略的文件和目录。.editorconfig
: 定义代码编辑器的配置,以保持代码风格的一致性。Dockerfile
和Dockerfile.aarch64
: 用于构建 Docker 镜像的文件,后者是为 arm64 架构准备的。Jenkinsfile
: Jenkins CI/CD 流水线配置文件。LICENSE
: 项目使用的 GPL-3.0 许可证。README.md
: 项目说明文件。package_versions.txt
: 包含项目依赖的包版本。readme-vars.yml
: 包含用于生成 README 文件的变量。jenkins-vars.yml
: 包含 Jenkins 相关的变量。
2. 项目的启动文件介绍
项目的启动主要依赖于 Docker,以下是两种启动方式:
使用 docker-compose
创建一个名为 docker-compose.yml
的文件,内容如下:
services:
speedtest-tracker:
image: lscr.io/linuxserver/speedtest-tracker:latest
container_name: speedtest-tracker
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- APP_KEY=
- APP_URL=
- DB_CONNECTION=sqlite
- SPEEDTEST_SCHEDULE=
- SPEEDTEST_SERVERS=
- DB_HOST=
- DB_PORT=
- DB_DATABASE=
- DB_USERNAME=
- DB_PASSWORD=
- DISPLAY_TIMEZONE=Etc/UTC
- PRUNE_RESULTS_OLDER_THAN=0
volumes:
- /path/to/speedtest-tracker/data:/config
ports:
- 80:80
restart: unless-stopped
然后运行 docker-compose up -d
来启动服务。
使用 docker 命令行
你也可以直接使用 Docker 命令来运行容器:
docker run -d \
--name=speedtest-tracker \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Etc/UTC \
-e APP_KEY= \
-e APP_URL= \
-e DB_CONNECTION=sqlite \
-e SPEEDTEST_SCHEDULE= \
-e SPEEDTEST_SERVERS= \
-e DB_HOST= \
-e DB_PORT= \
-e DB_DATABASE= \
-e DB_USERNAME= \
-e DB_PASSWORD= \
-e DISPLAY_TIMEZONE=Etc/UTC \
-e PRUNE_RESULTS_OLDER_THAN=0 \
-p 80:80 \
-v /path/to/speedtest-tracker/data:/config \
--restart unless-stopped \
lscr.io/linuxserver/speedtest-tracker:latest
3. 项目的配置文件介绍
项目的配置主要通过环境变量进行,以下是一些主要的环境变量及其作用:
PUID
和PGID
:用于设置容器内进程的用户 ID 和组 ID,以确保容器可以正确访问挂载的卷。TZ
:指定容器使用的时区。APP_KEY
:应用密钥,用于加密存储的数据,可以在 speedtest-tracker.dev 生成。APP_URL
:应用的访问 URL 或 IP 地址。DB_CONNECTION
:指定数据库连接类型,支持sqlite
、pgsql
或mysql
。SPEEDTEST_SCHEDULE
:设置测试计划,使用 cron 格式。SPEEDTEST_SERVERS
:要测试的服务器 ID 列表,可以通过运行docker run -it --rm --entrypoint /bin/bash lscr.io/linuxserver/speedtest-tracker:latest list-servers
来获取服务器列表。DB_HOST
、DB_PORT
、DB_DATABASE
、DB_USERNAME
、DB_PASSWORD
:如果使用pgsql
或mysql
数据库,这些变量分别用于设置数据库的主机名、端口、数据库名、用户名和密码。DISPLAY_TIMEZONE
:设置 UI 显示的时区。PRUNE_RESULTS_OLDER_THAN
:设置保留测试结果的天数。
通过修改这些环境变量的值,可以定制项目的配置,以适应不同的部署需求。
docker-speedtest-tracker 项目地址: https://gitcode.com/gh_mirrors/do/docker-speedtest-tracker