Docker实战:使用Docker部署speedtest-tracker速度测试追踪器

2024-12-22 12:37:34 6点赞 50收藏 0评论

Docker实战:使用Docker部署speedtest-tracker速度测试追踪器

一、speedtest-tracker介绍

1.1 speedtest-tracker简介

  • speedtest-tracker简介

speedtest-tracker可以持续跟踪您的互联网速度,该程序每小时运行一次速度测试检查并绘制结果图表。后端是用Laravel编写的,前端使用React。它使用Ookla 的 speedtest cli包获取数据并使用Chart.js绘制结果。

1.2 speedtest-tracker功能

  • 每小时自动运行一次速度测试

  • x 天之前的速度测试图表

  • 以 JSON/CSV 格式备份/恢复数据

  • Slack/Discord/Telegram 通知

  • healthchecks.io集成

  • 组织整合

  • InfluxDB 集成(目前仅 v1,v2 尚未完成)

1.3 speedtest-tracker使用场景

  • 在家办公:当您在家办公时,您可能需要知道您的互联网速度是否足够快以满足您的工作需求。通过使用speedtest-tracker,您可以持续跟踪您的互联网速度,并将结果图表化,以便您了解在不同时间段内的速度变化情况。

  • 网络游戏:对于喜欢在线游戏的人来说,稳定的和快速的互联网连接是非常重要的。speedtest-tracker可以帮助您监测您的互联网速度,以确保您的连接在游戏过程中不会出现延迟或连接中断问题。

  • 互联网服务提供商选择:如果您对您的互联网服务提供商的速度感到不满意,您可以使用speedtest-tracker来持续监测您的互联网速度。您可以将收集到的结果与其他供应商的速度进行比较,以便做出更明智的选择。

  • 网络故障排除:当您的互联网连接出现问题时,您可以使用speedtest-tracker来进行速度测试,并将结果与正常情况下的速度进行对比。这可以帮助您确定问题的根源,并更好地向互联网服务提供商或技术支持团队描述您遇到的问题。

  • 互联网速度优化:如果您想改善您的互联网速度,您可以使用speedtest-tracker来持续监测您的互联网速度,并尝试在不同时间段使用不同的网络设置。通过对比结果,您可以确定哪些设置或时间段提供了最佳的速度,并相应地进行优化。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

Docker实战:使用Docker部署speedtest-tracker速度测试追踪器

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.在Docker环境下部署 speedtest-tracker。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

[root@jeven ~]# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2024-02-15 19:05:02 CST; 1min 7s ago Main PID: 12320 (dockerd) Tasks: 12 Memory: 131.8M CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

[root@jeven ~]# docker compose version Docker Compose version v2.6.0

四、下载speedtest-tracker镜像

从docker hub拉取speedtest-tracker镜像

[root@jeven ~]# docker pull henrywhitaker3/speedtest-tracker Using default tag: latest latest: Pulling from henrywhitaker3/speedtest-tracker c91af5d1b23e: Pull complete 740fcfa9e15a: Pull complete ce5b3694a6d6: Pull complete a83d676a55d9: Pull complete 38ac933c5d8d: Pull complete dc32e0469fc9: Pull complete 2692dc6e8a90: Pull complete 36a44203a304: Pull complete df68ab8ba510: Pull complete 712e86a465e0: Pull complete b87cc77a8de9: Pull complete Digest: sha256:47159a9402291275bd9f8a8ed4f5c1ce8502de216465ed29da8a3c995b807df1 Status: Downloaded newer image for henrywhitaker3/speedtest-tracker:latest docker.io/henrywhitaker3/speedtest-tracker:latest

五、部署speedtest-tracker

5.1 使用docker-cli创建speedtest-tracker容器

使用docker-cli快速部署speedtest-tracker容器

docker create --name=speedtest -p 6890:80 -v /data/speedtest/config:/config -e OOKLA_EULA_GDPR=true --restart unless-stopped henrywhitaker3/speedtest-tracker

5.2 编辑docker-compose.yaml文件

创建挂载目录

mkdir -p /data/speedtest/config && cd /data/speedtest/

本次实践使用docker compose方式运行Calcium容器,编辑docker-compose.yaml文件内容如下:

version: '3.3' services: speedtest: container_name: speedtest image: henrywhitaker3/speedtest-tracker ports: - 6890:80 volumes: - /data/speedtest/config:/config environment: - TZ=Asia/Shanghai - OOKLA_EULA_GDPR=true logging: driver: "json-file" options: max-file: "10" max-size: "200k" restart: always

相关环境变量设置介绍:

  • -p 8765:80 在端口 8765 上公开 Web 服务器

  • -v /config 所有配置文件都保存在此处。

  • -e OOKLA_EULA_GDPR 设置为“true”以接受 Ookla EULA和隐私协议。如果不设置,容器将不会启动。

  • -e SLACK_WEBHOOK 可选的。在此处放置一个 slack webhook,以便在运行速度测试时获取 slack 通知。要使用 Discord Webhooks,只需附加/slack到 Discord Webhook URL 的末尾即可

  • -e TELEGRAM_BOT_TOKEN 可选的。Telegram 机器人 API 令牌。

  • -e TELEGRAM_CHAT_ID 可选的。。

  • -e PUID 可选的。为卷权限提供本地用户 ID

  • -e PGID 可选的。为卷权限提供本地组 ID

  • -e AUTH 可选的。设置为“true”以启用应用程序身份验证

  • -e INFLUXDB_RETENTION 可选的。设置InfluxDB保留期限,默认为30d

  • `-e INFLUXDB_HOST_TAG 可选的。设置InfluxDB主机标签值,默认为speedtest

5.3 运行speedtest-tracker容器

  • 使用docker-compose.yaml文件创建speedtest-tracker容器

[root@jeven speedtest]# docker compose up -d [+] Running 2/2 ⠿ Network speedtest_default Created 0.0s ⠿ Container speedtest Started 0.7s

5.4 检查speedtest-tracker容器状态

检查speedtest-tracker容器状态,确speedtest-tracker容器正常启动。

[root@jeven speedtest]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3f18b898c1eb henrywhitaker3/speedtest-tracker "/init" 2 seconds ago Up 2 seconds 443/tcp, 0.0.0.0:6890->80/tcp, :::6890->80/tcp speedtes

5.5 检查speedtest-tracker容器日志

检查speedtest-tracker容器运行日志,确保speedtest-tracker服务正常运行。

docker compose logs Docker实战:使用Docker部署speedtest-tracker速度测试追踪器

六、访问speedtest-tracker首页

访问地址:http://192.168.3.166:6890/,将IP替换为自己服务器IP地址,进入到speedtest-tracker首页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

Docker实战:使用Docker部署speedtest-tracker速度测试追踪器Docker实战:使用Docker部署speedtest-tracker速度测试追踪器

七、总结

speedtest Tracker是一款非常实用的工具,它允许用户持续跟踪和监控互联网速度。这款工具具有直观明了的用户界面,自动化的速度测试功能以及数据跟踪和分析功能,能够更好地了解互联网服务质量。同时,我也很喜欢它的界面风格,网速测试也很准确,可以加入到我们的个人工具箱中。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

华为家庭存储4TBMate70手机一碰扩容双盘位nas网络存储器相册备份家用硬盘网盘私有云服务器

华为家庭存储4TBMate70手机一碰扩容双盘位nas网络存储器相册备份家用硬盘网盘私有云服务器

¥2599起 去购买

绿联(UGREEN)私有云DXP480016G版四盘位NAS网络存储个人云硬盘家庭服务器文件同步手机平板扩容适用iPhone16

绿联(UGREEN)私有云DXP480016G版四盘位NAS网络存储个人云硬盘家庭服务器文件同步手机平板扩容适用iPhone16

暂无报价

七彩虹(Colorful)高性能mini迷你主机台式电脑办公家用小主机正版系统政府补贴20%(酷睿13代i7-13620H16G512G)

七彩虹(Colorful)高性能mini迷你主机台式电脑办公家用小主机正版系统政府补贴20%(酷睿13代i7-13620H16G512G)

暂无报价

磐镭WI-6MINI口袋主机英特尔12代四核N100高性能迷你主机办公游戏迷你台式电脑12代N100/16G/512G

磐镭WI-6MINI口袋主机英特尔12代四核N100高性能迷你主机办公游戏迷你台式电脑12代N100/16G/512G

暂无报价

UGREEN 绿联 DXP4800 四盘位 私有云NAS存储(Intel N100、8GB)

UGREEN 绿联 DXP4800 四盘位 私有云NAS存储(Intel N100、8GB)

2079元起

UGREEN 绿联 DXP2800 双盘位 私有云NAS存储(Intel N100、8GB)

UGREEN 绿联 DXP2800 双盘位 私有云NAS存储(Intel N100、8GB)

1699元起

UGREEN 绿联 DXP4800 Plus 四盘位 私有云NAS存储

UGREEN 绿联 DXP4800 Plus 四盘位 私有云NAS存储

2199元起

HUAWEI 华为 AS6020 双盘位 家庭存储 NAS

HUAWEI 华为 AS6020 双盘位 家庭存储 NAS

1699元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1595.01元起

UGREEN 绿联 DXP480T Plus 四盘位 私有云NAS存储(酷睿i5-1235U、8GB)

UGREEN 绿联 DXP480T Plus 四盘位 私有云NAS存储(酷睿i5-1235U、8GB)

3699元起

UGREEN 绿联 DXP6800 Pro 六盘位 NAS存储(Intel Core i5、无盘)

UGREEN 绿联 DXP6800 Pro 六盘位 NAS存储(Intel Core i5、无盘)

4899元起

UGREEN 绿联 DXP8800 Plus 八盘位 NAS存储(Intel Core i5、无盘)

UGREEN 绿联 DXP8800 Plus 八盘位 NAS存储(Intel Core i5、无盘)

6972元起

UGREEN 绿联 绿联 DXP6800 Plus 六盘位NAS网络存储个人云硬盘服务器

UGREEN 绿联 绿联 DXP6800 Plus 六盘位NAS网络存储个人云硬盘服务器

4499元起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1699元起

华为家庭存储4TB 16TB 无盘版 一碰扩容 双盘位nas网络存储器

华为家庭存储4TB 16TB 无盘版 一碰扩容 双盘位nas网络存储器

4199元起

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1209元起

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×2T酷狼硬盘)

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×2T酷狼硬盘)

暂无报价

UGREEN 绿联 私有云DX4600 8G版 32T四盘位Nas网络存储服务器文件共享 个人云网盘支持手机平板扩容适用苹果15配4*8TB酷狼硬盘

UGREEN 绿联 私有云DX4600 8G版 32T四盘位Nas网络存储服务器文件共享 个人云网盘支持手机平板扩容适用苹果15配4*8TB酷狼硬盘

7179元起

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×4T酷狼硬盘)家庭个人云网盘

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×4T酷狼硬盘)家庭个人云网盘

暂无报价

绿联 私有云DX4600 Pro数据博士8G版 四盘位Nas网络存储硬盘服务器( 配2*4T酷狼硬盘)文件共享 个人云网盘

绿联 私有云DX4600 Pro数据博士8G版 四盘位Nas网络存储硬盘服务器( 配2*4T酷狼硬盘)文件共享 个人云网盘

暂无报价

文中相关商品

京东 UGREEN 绿联 DXP4800 四盘位 NAS存储(N100、16GB)
京东 COLORFUL 七彩虹 CMNH01 十三代酷睿版 迷你商用主机 黑色(酷睿i7-13620H、核芯显卡、16GB、512GB SSD)
京东 磐镭WI-6 MINI 口袋主机 英特尔12代四核N100 高性能迷你主机 办公游戏迷你台式电脑 12代N100/16G/512G
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
50
扫一下,分享更方便,购买更轻松