From d581a1995d4cdc360cf51548adc8603f5d691a7a Mon Sep 17 00:00:00 2001 From: Meng Sen Date: Thu, 10 Oct 2024 11:03:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E5=B8=83=E5=BA=94=E7=94=A8=20Dozzle?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Meng Sen --- README.md | 1 + apps/dozzle/6.6.3/data.yml | 10 ++++++++ apps/dozzle/6.6.3/docker-compose.yml | 30 ++++++++++++++++++++++ apps/dozzle/6.6.3/scripts/init.sh | 15 +++++++++++ apps/dozzle/6.6.3/scripts/uninstall.sh | 10 ++++++++ apps/dozzle/6.6.3/scripts/upgrade.sh | 15 +++++++++++ apps/dozzle/README.md | 33 +++++++++++++++++++++++++ apps/dozzle/data.yml | 16 ++++++++++++ apps/dozzle/logo.png | Bin 0 -> 7525 bytes 9 files changed, 130 insertions(+) create mode 100644 apps/dozzle/6.6.3/data.yml create mode 100644 apps/dozzle/6.6.3/docker-compose.yml create mode 100644 apps/dozzle/6.6.3/scripts/init.sh create mode 100644 apps/dozzle/6.6.3/scripts/uninstall.sh create mode 100644 apps/dozzle/6.6.3/scripts/upgrade.sh create mode 100644 apps/dozzle/README.md create mode 100644 apps/dozzle/data.yml create mode 100644 apps/dozzle/logo.png diff --git a/README.md b/README.md index c60b8546..1c9829d2 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,7 @@ | 🟢 | | Cookie Cloud | https://github.com/easychen/CookieCloud/ | CookieCloud是一个和自架服务器同步浏览器Cookie和LocalStorage的小工具 | | | 🟢 | | DeepLX | https://deeplx.owo.network/ | DeepL免费API(无需TOKEN) | | | 🟢 | | Dockge | https://dockge.kuma.pet/ | 面向堆栈的管理器 | | +| 🟢 | | Dozzle | https://dozzle.dev/ | 一个轻量级的小应用程序,有一个基于web的界面来监控Docker日志 | | | 🟢 | | 独角数卡 | https://github.com/assimon/dujiaoka/ | 独角数卡(自动售货系统)-开源站长自动化售货解决方案、高效、稳定、快速 | | | 🟢 | | Elasticsearch | https://www.elastic.co/elasticsearch/ | Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎 | Elastic | | 🟢 | | Kibana | https://www.elastic.co/kibana/ | Kibana 针对大规模数据快速运行数据分析 | Elastic | diff --git a/apps/dozzle/6.6.3/data.yml b/apps/dozzle/6.6.3/data.yml new file mode 100644 index 00000000..482f7b27 --- /dev/null +++ b/apps/dozzle/6.6.3/data.yml @@ -0,0 +1,10 @@ +additionalProperties: + formFields: + - default: 8080 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number diff --git a/apps/dozzle/6.6.3/docker-compose.yml b/apps/dozzle/6.6.3/docker-compose.yml new file mode 100644 index 00000000..fb6f671c --- /dev/null +++ b/apps/dozzle/6.6.3/docker-compose.yml @@ -0,0 +1,30 @@ +networks: + 1panel-network: + external: true + +services: + dozzle: + image: amir20/dozzle:v6.6.3 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:8080 + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + healthcheck: + test: [ "CMD", "/dozzle", "healthcheck" ] + interval: 3s + timeout: 30s + retries: 5 + start_period: 30s + volumes: + - /var/run/docker.sock:/var/run/docker.sock + environment: + - DOZZLE_ADDR=:8080 + - DOZZLE_BASE=/ + - DOZZLE_LEVEL=info diff --git a/apps/dozzle/6.6.3/scripts/init.sh b/apps/dozzle/6.6.3/scripts/init.sh new file mode 100644 index 00000000..77b84912 --- /dev/null +++ b/apps/dozzle/6.6.3/scripts/init.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/dozzle/6.6.3/scripts/uninstall.sh b/apps/dozzle/6.6.3/scripts/uninstall.sh new file mode 100644 index 00000000..c86c4fbc --- /dev/null +++ b/apps/dozzle/6.6.3/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/dozzle/6.6.3/scripts/upgrade.sh b/apps/dozzle/6.6.3/scripts/upgrade.sh new file mode 100644 index 00000000..77b84912 --- /dev/null +++ b/apps/dozzle/6.6.3/scripts/upgrade.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/dozzle/README.md b/apps/dozzle/README.md new file mode 100644 index 00000000..bafbd4f3 --- /dev/null +++ b/apps/dozzle/README.md @@ -0,0 +1,33 @@ +# Dozzle + +Dozzle是一个轻量级的小应用程序,有一个基于web的界面来监控Docker日志。它不存储任何日志文件。它仅用于实时监视容器日志。 + +![Dockge](https://file.lifebus.top/imgs/dozzle_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 特性 + +🔍 智能模糊搜索容器名称 + +🔦 使用正则表达式,搜索日志 + +📊 使用 SQL 查询搜索日志 + +🏎 小的内存占用 + +📓 多日志查看的分屏 + +🈷️ 实时统计,包括内存和 CPU 使用情况 + +🚨 多用户身份验证,支持代理转发授权 + +🐳 集群模式支持 + +🛜 监控多个 Docker 主机的代理模式 + +🌙 深色模式 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/dozzle/data.yml b/apps/dozzle/data.yml new file mode 100644 index 00000000..fedd6854 --- /dev/null +++ b/apps/dozzle/data.yml @@ -0,0 +1,16 @@ +additionalProperties: + key: dozzle + name: Dozzle + tags: + - WebSite + - Middleware + - Tool + - Local + shortDescZh: 一个轻量级的小应用程序,有一个基于web的界面来监控Docker日志 + shortDescEn: web-based interface to monitor Docker logs + type: website + crossVersionUpdate: true + recommend: 0 + website: https://dozzle.dev/ + github: https://github.com/amir20/dozzle/ + document: https://dozzle.dev/ diff --git a/apps/dozzle/logo.png b/apps/dozzle/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..e21fa789b318dd545a1d8a4caa3f36fd6b622a0b GIT binary patch literal 7525 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%0ATz7xF_Jv{h_A;Knoz){y)iQ&D_{y%Q}ow+~s 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 literal 0 KcmV+b0RR6000031