mirror of
https://github.com/okxlin/appstore.git
synced 2026-09-25 00:01:02 +00:00
Add LibreSpeed LinuxServer app
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
CONTAINER_NAME=
|
||||
PANEL_APP_PORT_HTTP=80
|
||||
CONFIG_PATH=./data/config
|
||||
TIME_ZONE=Asia/Shanghai
|
||||
PASSWORD=linuxserver-change-me
|
||||
CUSTOM_RESULTS=false
|
||||
IPINFO_APIKEY=
|
||||
|
||||
@@ -0,0 +1,107 @@
|
||||
additionalProperties:
|
||||
formFields:
|
||||
- default: 80
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_HTTP
|
||||
labelEn: HTTP Port
|
||||
labelZh: HTTP 端口
|
||||
label:
|
||||
en: HTTP Port
|
||||
zh: HTTP 端口
|
||||
zh-Hant: HTTP 連接埠
|
||||
ja: HTTP ポート
|
||||
ko: HTTP 포트
|
||||
ru: HTTP-порт
|
||||
ms: Port HTTP
|
||||
pt-br: Porta HTTP
|
||||
required: true
|
||||
type: number
|
||||
rule: paramPort
|
||||
- default: ./data/config
|
||||
edit: true
|
||||
envKey: CONFIG_PATH
|
||||
labelEn: Config folder path
|
||||
labelZh: 配置文件路径
|
||||
label:
|
||||
en: Config folder path
|
||||
zh: 配置文件路径
|
||||
zh-Hant: 設定檔資料夾路徑
|
||||
ja: 設定フォルダーのパス
|
||||
ko: 설정 폴더 경로
|
||||
ru: Путь к папке конфигурации
|
||||
ms: Laluan folder konfigurasi
|
||||
pt-br: Caminho da pasta de configuração
|
||||
required: true
|
||||
type: text
|
||||
- default: Asia/Shanghai
|
||||
edit: true
|
||||
envKey: TIME_ZONE
|
||||
labelEn: Time zone
|
||||
labelZh: 时区
|
||||
label:
|
||||
en: Time zone
|
||||
zh: 时区
|
||||
zh-Hant: 時區
|
||||
ja: タイムゾーン
|
||||
ko: 시간대
|
||||
ru: Часовой пояс
|
||||
ms: Zon waktu
|
||||
pt-br: Fuso horário
|
||||
required: true
|
||||
type: text
|
||||
- default: linuxserver-change-me
|
||||
edit: true
|
||||
envKey: PASSWORD
|
||||
labelEn: Results database password
|
||||
labelZh: 结果数据库密码
|
||||
label:
|
||||
en: Results database password
|
||||
zh: 结果数据库密码
|
||||
zh-Hant: 結果資料庫密碼
|
||||
ja: 結果データベースのパスワード
|
||||
ko: 결과 데이터베이스 비밀번호
|
||||
ru: Пароль базы данных результатов
|
||||
ms: Kata laluan pangkalan data keputusan
|
||||
pt-br: Senha do banco de dados de resultados
|
||||
random: true
|
||||
required: true
|
||||
rule: paramComplexity
|
||||
type: password
|
||||
- default: "false"
|
||||
edit: true
|
||||
envKey: CUSTOM_RESULTS
|
||||
labelEn: Custom results page
|
||||
labelZh: 自定义结果页
|
||||
label:
|
||||
en: Custom results page
|
||||
zh: 自定义结果页
|
||||
zh-Hant: 自訂結果頁
|
||||
ja: カスタム結果ページ
|
||||
ko: 사용자 지정 결과 페이지
|
||||
ru: Пользовательская страница результатов
|
||||
ms: Halaman keputusan tersuai
|
||||
pt-br: Pagina de resultados personalizada
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: "false"
|
||||
value: "false"
|
||||
- label: "true"
|
||||
value: "true"
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: IPINFO_APIKEY
|
||||
labelEn: IPInfo access token
|
||||
labelZh: IPInfo 访问令牌
|
||||
label:
|
||||
en: IPInfo access token
|
||||
zh: IPInfo 访问令牌
|
||||
zh-Hant: IPInfo 存取權杖
|
||||
ja: IPInfo アクセストークン
|
||||
ko: IPInfo 액세스 토큰
|
||||
ru: Токен доступа IPInfo
|
||||
ms: Token akses IPInfo
|
||||
pt-br: Token de acesso IPInfo
|
||||
required: false
|
||||
type: password
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
networks:
|
||||
1panel-network:
|
||||
external: true
|
||||
services:
|
||||
librespeed:
|
||||
image: "linuxserver/librespeed:6.1.0"
|
||||
container_name: ${CONTAINER_NAME}
|
||||
restart: always
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- "${PANEL_APP_PORT_HTTP}:80"
|
||||
volumes:
|
||||
- "${CONFIG_PATH}:/config"
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=${TIME_ZONE}
|
||||
- PASSWORD=${PASSWORD}
|
||||
- CUSTOM_RESULTS=${CUSTOM_RESULTS}
|
||||
- DB_TYPE=sqlite
|
||||
- IPINFO_APIKEY=${IPINFO_APIKEY:-}
|
||||
labels:
|
||||
createdBy: "Apps"
|
||||
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
paths=(
|
||||
"${CONFIG_PATH:-./data/config}"
|
||||
)
|
||||
|
||||
mkdir -p "${paths[@]}"
|
||||
for path in "${paths[@]}"; do
|
||||
case "$path" in
|
||||
./*|../*) chown -R 1000:1000 "$path" 2>/dev/null || true ;;
|
||||
esac
|
||||
done
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
docker-compose down --volumes
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
:
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
# LibreSpeed
|
||||
|
||||
## 产品介绍
|
||||
LibreSpeed 是一个自托管网络速度测试服务,本应用使用 LinuxServer.io 镜像部署。
|
||||
|
||||
## 主要功能
|
||||
- 在浏览器中进行下载、上传、延迟和抖动测试。
|
||||
- 使用 `/config` 持久化配置和结果数据库。
|
||||
- 默认使用 sqlite 结果数据库,便于单容器部署和迁移。
|
||||
|
||||
## 访问说明
|
||||
安装完成后,通过应用表单中的 HTTP 端口访问 Web UI。
|
||||
|
||||
## Introduction
|
||||
LibreSpeed is a self-hosted network speed test service. This app deploys the LinuxServer.io image.
|
||||
|
||||
## Features
|
||||
- Run download, upload, latency, and jitter tests from a browser.
|
||||
- Persist configuration and the results database under `/config`.
|
||||
- Use sqlite by default for a simple single-container deployment.
|
||||
|
||||
## 应用简介
|
||||
LibreSpeed 测速服务。
|
||||
|
||||
英文说明:Network speed test service maintained by LinuxServer.io.
|
||||
|
||||
## 部署说明
|
||||
- 本应用使用 Docker Compose 在 1Panel 中部署。
|
||||
- 应用分类:工具。
|
||||
- 支持架构:amd64、arm64。
|
||||
- 可选版本:`latest`、`6.1.0`。
|
||||
|
||||
## 端口
|
||||
| 变量 | 说明 | 默认值 | 必填 |
|
||||
| --- | --- | --- | --- |
|
||||
| PANEL_APP_PORT_HTTP | HTTP 端口 | 80 | 是 |
|
||||
|
||||
## 数据持久化
|
||||
| 变量 | 说明 | 默认值 | 必填 |
|
||||
| --- | --- | --- | --- |
|
||||
| CONFIG_PATH | 配置文件路径 | ./data/config | 是 |
|
||||
|
||||
升级或迁移前,请在 1Panel 中备份上述数据目录。
|
||||
|
||||
## 配置项
|
||||
| 变量 | 说明 | 默认值 | 必填 |
|
||||
| --- | --- | --- | --- |
|
||||
| TIME_ZONE | 时区 | Asia/Shanghai | 是 |
|
||||
| PASSWORD | 结果数据库密码 | 随机生成 | 是 |
|
||||
| CUSTOM_RESULTS | 启用自定义结果页 | false | 是 |
|
||||
| IPINFO_APIKEY | IPInfo 访问令牌 | 空 | 否 |
|
||||
|
||||
## 使用说明
|
||||
- 默认结果数据库类型固定为 sqlite,不需要外部数据库。
|
||||
- 如需对外开放访问,请同步检查防火墙、安全组和反向代理配置。
|
||||
|
||||
## 参考资料
|
||||
- 官网: <https://librespeed.org/>
|
||||
- 文档: <https://docs.linuxserver.io/images/docker-librespeed/>
|
||||
- 源码: <https://github.com/linuxserver/docker-librespeed>
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
name: LibreSpeed
|
||||
tags:
|
||||
- Tool
|
||||
title: LibreSpeed 测速服务
|
||||
description: LibreSpeed 测速服务
|
||||
additionalProperties:
|
||||
key: librespeed-linuxserver
|
||||
name: LibreSpeed
|
||||
tags:
|
||||
- Tool
|
||||
shortDescZh: LibreSpeed 测速服务
|
||||
shortDescEn: Network speed test service maintained by LinuxServer.io
|
||||
description:
|
||||
en: Network speed test service maintained by LinuxServer.io
|
||||
zh: LibreSpeed 测速服务
|
||||
zh-Hant: LibreSpeed 測速服務
|
||||
ja: LinuxServer.io が保守するネットワーク速度テストサービス
|
||||
ko: LinuxServer.io에서 유지 관리하는 네트워크 속도 테스트 서비스
|
||||
ru: Сервис проверки скорости сети, поддерживаемый LinuxServer.io
|
||||
ms: Perkhidmatan ujian kelajuan rangkaian yang diselenggara oleh LinuxServer.io
|
||||
pt-br: Servico de teste de velocidade de rede mantido pela LinuxServer.io
|
||||
type: tool
|
||||
crossVersionUpdate: true
|
||||
limit: 0
|
||||
website: https://librespeed.org/
|
||||
github: https://github.com/linuxserver/docker-librespeed
|
||||
document: https://docs.linuxserver.io/images/docker-librespeed/
|
||||
architectures:
|
||||
- amd64
|
||||
- arm64
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
CONTAINER_NAME=
|
||||
PANEL_APP_PORT_HTTP=80
|
||||
CONFIG_PATH=./data/config
|
||||
TIME_ZONE=Asia/Shanghai
|
||||
PASSWORD=linuxserver-change-me
|
||||
CUSTOM_RESULTS=false
|
||||
IPINFO_APIKEY=
|
||||
|
||||
@@ -0,0 +1,107 @@
|
||||
additionalProperties:
|
||||
formFields:
|
||||
- default: 80
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_HTTP
|
||||
labelEn: HTTP Port
|
||||
labelZh: HTTP 端口
|
||||
label:
|
||||
en: HTTP Port
|
||||
zh: HTTP 端口
|
||||
zh-Hant: HTTP 連接埠
|
||||
ja: HTTP ポート
|
||||
ko: HTTP 포트
|
||||
ru: HTTP-порт
|
||||
ms: Port HTTP
|
||||
pt-br: Porta HTTP
|
||||
required: true
|
||||
type: number
|
||||
rule: paramPort
|
||||
- default: ./data/config
|
||||
edit: true
|
||||
envKey: CONFIG_PATH
|
||||
labelEn: Config folder path
|
||||
labelZh: 配置文件路径
|
||||
label:
|
||||
en: Config folder path
|
||||
zh: 配置文件路径
|
||||
zh-Hant: 設定檔資料夾路徑
|
||||
ja: 設定フォルダーのパス
|
||||
ko: 설정 폴더 경로
|
||||
ru: Путь к папке конфигурации
|
||||
ms: Laluan folder konfigurasi
|
||||
pt-br: Caminho da pasta de configuração
|
||||
required: true
|
||||
type: text
|
||||
- default: Asia/Shanghai
|
||||
edit: true
|
||||
envKey: TIME_ZONE
|
||||
labelEn: Time zone
|
||||
labelZh: 时区
|
||||
label:
|
||||
en: Time zone
|
||||
zh: 时区
|
||||
zh-Hant: 時區
|
||||
ja: タイムゾーン
|
||||
ko: 시간대
|
||||
ru: Часовой пояс
|
||||
ms: Zon waktu
|
||||
pt-br: Fuso horário
|
||||
required: true
|
||||
type: text
|
||||
- default: linuxserver-change-me
|
||||
edit: true
|
||||
envKey: PASSWORD
|
||||
labelEn: Results database password
|
||||
labelZh: 结果数据库密码
|
||||
label:
|
||||
en: Results database password
|
||||
zh: 结果数据库密码
|
||||
zh-Hant: 結果資料庫密碼
|
||||
ja: 結果データベースのパスワード
|
||||
ko: 결과 데이터베이스 비밀번호
|
||||
ru: Пароль базы данных результатов
|
||||
ms: Kata laluan pangkalan data keputusan
|
||||
pt-br: Senha do banco de dados de resultados
|
||||
random: true
|
||||
required: true
|
||||
rule: paramComplexity
|
||||
type: password
|
||||
- default: "false"
|
||||
edit: true
|
||||
envKey: CUSTOM_RESULTS
|
||||
labelEn: Custom results page
|
||||
labelZh: 自定义结果页
|
||||
label:
|
||||
en: Custom results page
|
||||
zh: 自定义结果页
|
||||
zh-Hant: 自訂結果頁
|
||||
ja: カスタム結果ページ
|
||||
ko: 사용자 지정 결과 페이지
|
||||
ru: Пользовательская страница результатов
|
||||
ms: Halaman keputusan tersuai
|
||||
pt-br: Pagina de resultados personalizada
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: "false"
|
||||
value: "false"
|
||||
- label: "true"
|
||||
value: "true"
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: IPINFO_APIKEY
|
||||
labelEn: IPInfo access token
|
||||
labelZh: IPInfo 访问令牌
|
||||
label:
|
||||
en: IPInfo access token
|
||||
zh: IPInfo 访问令牌
|
||||
zh-Hant: IPInfo 存取權杖
|
||||
ja: IPInfo アクセストークン
|
||||
ko: IPInfo 액세스 토큰
|
||||
ru: Токен доступа IPInfo
|
||||
ms: Token akses IPInfo
|
||||
pt-br: Token de acesso IPInfo
|
||||
required: false
|
||||
type: password
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
networks:
|
||||
1panel-network:
|
||||
external: true
|
||||
services:
|
||||
librespeed:
|
||||
image: "linuxserver/librespeed:latest"
|
||||
container_name: ${CONTAINER_NAME}
|
||||
restart: always
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- "${PANEL_APP_PORT_HTTP}:80"
|
||||
volumes:
|
||||
- "${CONFIG_PATH}:/config"
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=${TIME_ZONE}
|
||||
- PASSWORD=${PASSWORD}
|
||||
- CUSTOM_RESULTS=${CUSTOM_RESULTS}
|
||||
- DB_TYPE=sqlite
|
||||
- IPINFO_APIKEY=${IPINFO_APIKEY:-}
|
||||
labels:
|
||||
createdBy: "Apps"
|
||||
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
paths=(
|
||||
"${CONFIG_PATH:-./data/config}"
|
||||
)
|
||||
|
||||
mkdir -p "${paths[@]}"
|
||||
for path in "${paths[@]}"; do
|
||||
case "$path" in
|
||||
./*|../*) chown -R 1000:1000 "$path" 2>/dev/null || true ;;
|
||||
esac
|
||||
done
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
docker-compose down --volumes
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
:
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 5.8 KiB |
Reference in New Issue
Block a user