LinuxServer.io提供的Librespeed镜像,用于部署开源自托管网络速度测试工具,支持上传与下载速度测试。
收藏数: 145
下载次数: 22358874
类型:
linuxserver/librespeedLibrespeed 是一个轻量级的网速测试工具,采用Javascript实现,使用XMLHttpRequest和Web Workers。无需Flash、Java、Websocket等额外组件,实现纯粹的网速测试功能。
LinuxServer.io团队提供的此镜像具有以下特点:
该镜像支持以下架构:
| 架构 | 可用 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64-<version tag> |
| arm64 | ✅ | arm64v8-<version tag> |
只需拉取 lscr.io/linuxserver/librespeed:latest 即可获取适合您架构的正确镜像,也可以通过标签拉取特定架构的镜像。
访问 [***] 即可打开测速Web界面。结果数据库可通过 [***] 使用设置的密码访问。
默认使用的模板基于 example-singleServer-full.html。所有模板都位于 /config/www/ 目录中,供参考。您可以根据需要自定义 /config/www/index.html,删除该文件并重启容器可恢复默认设置。
您还可以选择将自定义的 speedtest.js 和 speedtest_worker.js 文件放在 /config/www 目录下,容器启动后会优先使用这些文件。请注意,自定义后这些文件将不再自动更新,删除它们并重新创建容器可恢复默认设置。
如果要设置MySQL或PostgreSQL数据库,需要先按照以下链接中的说明将表导入数据库: [***]
要启用自定义结果页面,请设置环境变量 CUSTOM_RESULTS=true 并启动(或重启)容器,系统会创建 /config/www/results/index.php 文件,您可以根据需要修改此文件。
您可以使用docker-compose或docker cli来创建容器。
[!NOTE] 除非参数标记为"可选",否则均为必填项,必须提供值。
yaml--- services: librespeed: image: lscr.io/linuxserver/librespeed:latest container_name: librespeed environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC - PASSWORD=PASSWORD - CUSTOM_RESULTS=false #可选 - DB_TYPE=sqlite #可选 - DB_NAME=DB_NAME #可选 - DB_HOSTNAME=DB_HOSTNAME #可选 - DB_USERNAME=DB_USERNAME #可选 - DB_PASSWORD=DB_PASSWORD #可选 - DB_PORT=DB_PORT #可选 - IPINFO_APIKEY=ACCESS_TOKEN #可选 volumes: - /path/to/librespeed/config:/config ports: - 80:80 restart: unless-stopped
bashdocker run -d \ --name=librespeed \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Etc/UTC \ -e PASSWORD=PASSWORD \ -e CUSTOM_RESULTS=false `#可选` \ -e DB_TYPE=sqlite `#可选` \ -e DB_NAME=DB_NAME `#可选` \ -e DB_HOSTNAME=DB_HOSTNAME `#可选` \ -e DB_USERNAME=DB_USERNAME `#可选` \ -e DB_PASSWORD=DB_PASSWORD `#可选` \ -e DB_PORT=DB_PORT `#可选` \ -e IPINFO_APIKEY=ACCESS_TOKEN `#可选` \ -p 80:80 \ -v /path/to/librespeed/config:/config \ --restart unless-stopped \ lscr.io/linuxserver/librespeed:latest
容器通过运行时传递的参数进行配置,格式为 <外部>:<内部>。
| 参数 | 功能 |
|---|---|
-p 80:80 | Web界面端口 |
-e PUID=1000 | 用户ID - 详见下方说明 |
-e PGID=1000 | 组ID - 详见下方说明 |
-e TZ=Etc/UTC | 指定时区,详见时区列表 |
-e PASSWORD=PASSWORD | 设置结果数据库的密码 |
-e CUSTOM_RESULTS=false | (可选)设为true以启用/config/www/results/index.php中的自定义结果页面 |
-e DB_TYPE=sqlite | 默认值为sqlite,也可设置为mysql或postgresql |
-e DB_NAME=DB_NAME | 数据库名称,MySQL和PostgreSQL必填 |
-e DB_HOSTNAME=DB_HOSTNAME | 数据库地址,MySQL和PostgreSQL必填 |
-e DB_USERNAME=DB_USERNAME | 数据库用户名,MySQL和PostgreSQL必填 |
-e DB_PASSWORD=DB_PASSWORD | 数据库密码,MySQL和PostgreSQL必填 |
-e DB_PORT=DB_PORT | 数据库端口,MySQL必填 |
-e IPINFO_APIKEY=ACCESS_TOKEN | ipinfo.io的访问令牌,获取详细IP信息时必填 |
-v /config | 持久化配置文件目录 |
您可以通过特殊的前缀FILE__从文件中设置任何环境变量。例如:
bash-e FILE__MYVAR=/run/secrets/mysecretvariable
这将根据/run/secrets/mysecretvariable文件的内容设置环境变量MYVAR。
所有镜像都提供了使用可选的-e UMASK=022设置来覆盖容器内启动的服务的默认umask设置的能力。请注意,umask不是chmod,它基于其值减去权限,而不是添加权限。
使用卷(-v标志)时,主机操作系统和容器之间可能会出现权限问题。我们通过允许您指定用户PUID和组PGID来避免此问题。
确保主机上的任何卷目录都由您指定的相同用户拥有,所有权限问题都将迎刃而解。
在此示例中PUID=1000和PGID=1000,要查找您的PUID和PGID,请使用:
bashid your_user
示例输出:
textuid=1000(your_user) gid=1000(your_user) groups=1000(your_user)
我们发布了各种Docker Mods,以启用容器内的附加功能。可通过上方动态徽章访问此镜像可用的Mods列表(如有)以及可应用于我们任何镜像的通用Mods。
bashdocker exec -it librespeed /bin/bash
bashdocker logs -f librespeed
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' librespeed
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/librespeed:latest
我们的大多数镜像是静态的、版本化的,需要更新镜像并重新创建容器来更新内部的应用程序。除了一些例外情况(在相关的readme.md中注明),我们不建议或支持在容器内更新应用程序。请参考上面的应用设置部分,了解是否推荐对该镜像进行更新。
以下是更新容器的说明:
bashdocker-compose pull
bashdocker-compose pull librespeed
bashdocker-compose up -d
bashdocker-compose up -d librespeed
bashdocker image prune
bashdocker pull lscr.io/linuxserver/librespeed:latest
bashdocker stop librespeed
bashdocker rm librespeed
使用上述相同的docker run参数重新创建新容器(如果正确映射到主机文件夹,您的/config文件夹和设置将被保留)
您还可以删除旧的悬空镜像:
bashdocker image prune
[!TIP] 我们推荐使用Diun进行更新通知。不推荐或支持其他自动更新容器的工具。
如果您想对这些镜像进行本地修改以用于开发目的或自定义逻辑:
bashgit clone [***] cd docker-librespeed docker build \ --no-cache \ --pull \ -t lscr.io/linuxserver/librespeed:latest .
可以使用lscr.io/linuxserver/qemu-static在x86_64硬件上构建ARM变体,反之亦然:
bashdocker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
注册后,您可以使用-f Dockerfile.aarch64定义要使用的dockerfile。
index.html被重新创建您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 版本下载页面。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务