From 35b3af4c51f5069e195e2532ae7f47b15cb218a4 Mon Sep 17 00:00:00 2001 From: okxlin Date: Wed, 3 Apr 2024 15:12:51 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=B7=BB=E5=8A=A0smokeping=E5=88=B0?= =?UTF-8?q?=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/smokeping/2.8.2/.env.sample | 6 ++++ apps/smokeping/2.8.2/data.yml | 39 +++++++++++++++++++++++ apps/smokeping/2.8.2/docker-compose.yml | 26 +++++++++++++++ apps/smokeping/README.md | 20 ++++++++++++ apps/smokeping/data.yml | 14 ++++++++ apps/smokeping/latest/.env.sample | 6 ++++ apps/smokeping/latest/data.yml | 39 +++++++++++++++++++++++ apps/smokeping/latest/docker-compose.yml | 26 +++++++++++++++ apps/smokeping/logo.png | Bin 0 -> 5283 bytes 9 files changed, 176 insertions(+) create mode 100644 apps/smokeping/2.8.2/.env.sample create mode 100644 apps/smokeping/2.8.2/data.yml create mode 100644 apps/smokeping/2.8.2/docker-compose.yml create mode 100644 apps/smokeping/README.md create mode 100644 apps/smokeping/data.yml create mode 100644 apps/smokeping/latest/.env.sample create mode 100644 apps/smokeping/latest/data.yml create mode 100644 apps/smokeping/latest/docker-compose.yml create mode 100644 apps/smokeping/logo.png diff --git a/apps/smokeping/2.8.2/.env.sample b/apps/smokeping/2.8.2/.env.sample new file mode 100644 index 000000000..fd64021af --- /dev/null +++ b/apps/smokeping/2.8.2/.env.sample @@ -0,0 +1,6 @@ +CONTAINER_NAME="smokeping" +PANEL_APP_PORT_HTTP="40213" +DATA_PATH="./data" +MASTER_URL="http://:40213/smokeping/" +SHARED_SECRET="" +TIME_ZONE="Asia/Shanghai" diff --git a/apps/smokeping/2.8.2/data.yml b/apps/smokeping/2.8.2/data.yml new file mode 100644 index 000000000..786fc633b --- /dev/null +++ b/apps/smokeping/2.8.2/data.yml @@ -0,0 +1,39 @@ +additionalProperties: + formFields: + - default: 40213 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number + - default: ./data + edit: true + envKey: DATA_PATH + labelEn: Data folder path + labelZh: 数据文件夹路径 + required: true + type: text + - default: http://:40213/smokeping/ + edit: true + envKey: MASTER_URL + labelEn: Master url + labelZh: 外部访问地址 + required: true + rule: paramHttp + type: text + - default: Asia/Shanghai + edit: true + envKey: TIME_ZONE + labelEn: Time zone + labelZh: 时区 + required: true + type: text + - default: '' + edit: true + envKey: SHARED_SECRET + labelEn: Master shared secret (slave mode) + labelZh: 主共享密钥 (从属模式) + required: false + type: text diff --git a/apps/smokeping/2.8.2/docker-compose.yml b/apps/smokeping/2.8.2/docker-compose.yml new file mode 100644 index 000000000..f3fd3e88f --- /dev/null +++ b/apps/smokeping/2.8.2/docker-compose.yml @@ -0,0 +1,26 @@ +version: '3' +services: + smokeping: + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:80" + image: linuxserver/smokeping:2.8.2 + environment: + - PUID=1000 + - PGID=1000 + - TZ=${TIME_ZONE} + - MASTER_URL=${MASTER_URL} + - SHARED_SECRET=${SHARED_SECRET} + - CACHE_DIR=/tmp + volumes: + - ${DATA_PATH}/config:/config + - ${DATA_PATH}/data:/data + labels: + createdBy: "Apps" + +networks: + 1panel-network: + external: true diff --git a/apps/smokeping/README.md b/apps/smokeping/README.md new file mode 100644 index 000000000..c02146c01 --- /dev/null +++ b/apps/smokeping/README.md @@ -0,0 +1,20 @@ +[Smokeping](https://oss.oetiker.ch/smokeping/) keeps track of your network latency. For a full example of what this application is capable of visit [UCDavis](http://smokeping.ucdavis.edu/cgi-bin/smokeping.fcgi). + +## Application Setup + +* Once running, the URL will be `http:///smokeping/smokeping.cgi`. For example, a full URL might look like `https://smokeping.yourdomain.com/smokeping/smokeping.cgi`. +* Basic setup: edit the `Targets` file to ping the hosts you're interested in to match the format found there. +* Wait 10 minutes. +* To reload the configuration without restarting the container, run `docker exec smokeping pkill -f -HUP '/usr/bin/perl /usr/s?bin/smokeping(_cgi)?'`, where `smokeping` is the container ID. +* To restart the container, run `docker restart smokeping`, where `smokeping` is the container ID. +* Note that the default `Targets` file includes items that may or may not work. These are simply to provide examples of configuration. +* Slave setup: modify the `Targets`, `Slaves`, and `smokeping_secrets` files on the master host, per [the documentation](https://manpages.ubuntu.com/manpages/trusty/en/man7/smokeping_master_slave.7.html). + +> 中文说明 +* 运行后,URL 将是 `http:///smokeping/smokeping.cgi`。例如,完整的 URL 可能是 `https://smokeping.yourdomain.com/smokeping/smokeping.cgi`。 +* 基本设置:编辑 `Targets` 文件,ping 你感兴趣的主机,使其与文件中的格式一致。 +* 等待 10 分钟。 +* 要在不重启容器的情况下重新加载配置,请运行 `docker exec smokeping pkill -f -HUP '/usr/bin/perl /usr/s?bin/smokeping(_cgi)?'` ,其中 `smokeping` 是容器 ID。 +* 要重新启动容器,请运行 `docker restart smokeping`,其中 `smokeping` 是容器 ID。 +* 请注意,默认的 `Targets` 文件包含的项目可能有效,也可能无效。这些只是为了提供配置示例。 +* 从属设置:根据 [文档](https://manpages.ubuntu.com/manpages/trusty/en/man7/smokeping_master_slave.7.html),修改主主机上的 `Targets`、`Slaves` 和 `smokeping_secrets` 文件。 diff --git a/apps/smokeping/data.yml b/apps/smokeping/data.yml new file mode 100644 index 000000000..4d9e88a74 --- /dev/null +++ b/apps/smokeping/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: smokeping + name: Smokeping + tags: + - Tool + shortDescZh: 一个豪华的延迟测量工具 + shortDescEn: A deluxe latency measurement tool + type: tool + crossVersionUpdate: true + limit: 0 + recommend: 0 + website: https://oss.oetiker.ch/smokeping/ + github: https://github.com/linuxserver/docker-smokeping + document: https://oss.oetiker.ch/smokeping/doc/index.en.html \ No newline at end of file diff --git a/apps/smokeping/latest/.env.sample b/apps/smokeping/latest/.env.sample new file mode 100644 index 000000000..fd64021af --- /dev/null +++ b/apps/smokeping/latest/.env.sample @@ -0,0 +1,6 @@ +CONTAINER_NAME="smokeping" +PANEL_APP_PORT_HTTP="40213" +DATA_PATH="./data" +MASTER_URL="http://:40213/smokeping/" +SHARED_SECRET="" +TIME_ZONE="Asia/Shanghai" diff --git a/apps/smokeping/latest/data.yml b/apps/smokeping/latest/data.yml new file mode 100644 index 000000000..786fc633b --- /dev/null +++ b/apps/smokeping/latest/data.yml @@ -0,0 +1,39 @@ +additionalProperties: + formFields: + - default: 40213 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number + - default: ./data + edit: true + envKey: DATA_PATH + labelEn: Data folder path + labelZh: 数据文件夹路径 + required: true + type: text + - default: http://:40213/smokeping/ + edit: true + envKey: MASTER_URL + labelEn: Master url + labelZh: 外部访问地址 + required: true + rule: paramHttp + type: text + - default: Asia/Shanghai + edit: true + envKey: TIME_ZONE + labelEn: Time zone + labelZh: 时区 + required: true + type: text + - default: '' + edit: true + envKey: SHARED_SECRET + labelEn: Master shared secret (slave mode) + labelZh: 主共享密钥 (从属模式) + required: false + type: text diff --git a/apps/smokeping/latest/docker-compose.yml b/apps/smokeping/latest/docker-compose.yml new file mode 100644 index 000000000..254d00c15 --- /dev/null +++ b/apps/smokeping/latest/docker-compose.yml @@ -0,0 +1,26 @@ +version: '3' +services: + smokeping: + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:80" + image: linuxserver/smokeping:latest + environment: + - PUID=1000 + - PGID=1000 + - TZ=${TIME_ZONE} + - MASTER_URL=${MASTER_URL} + - SHARED_SECRET=${SHARED_SECRET} + - CACHE_DIR=/tmp + volumes: + - ${DATA_PATH}/config:/config + - ${DATA_PATH}/data:/data + labels: + createdBy: "Apps" + +networks: + 1panel-network: + external: true diff --git a/apps/smokeping/logo.png b/apps/smokeping/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..44a1a842fd827849dbee9708dab7d0241540a8bb GIT binary patch literal 5283 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 literal 0 HcmV?d00001