diff --git a/appstore/glean/0.1.4/.env b/appstore/glean/0.1.4/.env new file mode 100644 index 000000000..cdeb2fc0d --- /dev/null +++ b/appstore/glean/0.1.4/.env @@ -0,0 +1,21 @@ +# 数据持久化路径 [必填] +GLEAN_ROOT_PATH=/home/glean + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=8080 + +# WebUI 后台端口 [必填] +PANEL_APP_PORT_ADMIN=3001 + +# 管理员用户名 [必填] +ADMIN_USERNAME=admin + +# 管理员密码 [必填] +ADMIN_PASSWORD= + +# 签名密钥 [必填] +SECRET_KEY= + +# 数据库密码 [必填] +POSTGRES_PASSWORD=glean + diff --git a/appstore/glean/0.1.4/data.yml b/appstore/glean/0.1.4/data.yml new file mode 100644 index 000000000..cedcd8aa9 --- /dev/null +++ b/appstore/glean/0.1.4/data.yml @@ -0,0 +1,53 @@ +additionalProperties: + formFields: + - default: "/home/glean" + edit: true + envKey: GLEAN_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 8080 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: 3001 + edit: true + envKey: PANEL_APP_PORT_ADMIN + labelZh: WebUI 后台端口 + labelEn: WebUI Admin Port + required: true + rule: paramPort + type: number + - default: "admin" + edit: true + envKey: ADMIN_USERNAME + labelZh: 管理员用户名 + labelEn: Admin username + required: true + type: text + - default: "" + edit: true + envKey: ADMIN_PASSWORD + labelZh: 管理员密码 + labelEn: Admin password + required: true + type: password + - default: "" + edit: true + envKey: SECRET_KEY + labelZh: 签名密钥 + labelEn: Signature key + required: true + type: password + - default: "glean" + edit: true + envKey: POSTGRES_PASSWORD + labelZh: 数据库密码 + labelEn: Postgres password + required: true + type: password diff --git a/appstore/glean/0.1.4/docker-compose.yml b/appstore/glean/0.1.4/docker-compose.yml new file mode 100644 index 000000000..6483c528b --- /dev/null +++ b/appstore/glean/0.1.4/docker-compose.yml @@ -0,0 +1,147 @@ +networks: + 1panel-network: + external: true + glean-network: + driver: bridge +services: + admin: + container_name: glean-admin + depends_on: + - backend + env_file: + - ./envs/global.env + - .env + image: ghcr.io/leslieleung/glean-admin:0.1.4 + networks: + - glean-network + ports: + - ${PANEL_APP_PORT_ADMIN:-3001}:80 + restart: always + backend: + command: + - uv + - run + - --no-sync + - uvicorn + - glean_api.main:app + - --host + - 0.0.0.0 + - --port + - '8000' + container_name: glean + depends_on: + postgres: + condition: service_healthy + redis: + condition: service_healthy + env_file: + - ./envs/global.env + - .env + environment: + ADMIN_PASSWORD: ${ADMIN_PASSWORD:-} + ADMIN_ROLE: ${ADMIN_ROLE:-super_admin} + ADMIN_USERNAME: ${ADMIN_USERNAME:-admin} + CORS_ORIGINS: '["http://localhost", "http://localhost:3000", "http://localhost:3001"]' + CREATE_ADMIN: ${CREATE_ADMIN:-true} + DATABASE_URL: postgresql+asyncpg://${POSTGRES_USER:-glean}:${POSTGRES_PASSWORD:-glean}@postgres:5432/${POSTGRES_DB:-glean} + DEBUG: ${DEBUG:-false} + REDIS_URL: redis://redis:6379/0 + RUN_MIGRATIONS: 'true' + SECRET_KEY: ${SECRET_KEY:-change-me-in-production-use-a-long-random-string} + healthcheck: + interval: 10s + retries: 5 + start_period: 30s + test: + - CMD + - curl + - -f + - http://localhost:8000/api/health + timeout: 5s + image: ghcr.io/leslieleung/glean-backend:0.1.4 + labels: + createdBy: Apps + networks: + - glean-network + restart: always + postgres: + container_name: glean-postgres + env_file: + - ./envs/global.env + - .env + environment: + POSTGRES_DB: ${POSTGRES_DB:-glean} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-glean} + POSTGRES_USER: ${POSTGRES_USER:-glean} + healthcheck: + interval: 10s + retries: 5 + test: + - CMD-SHELL + - pg_isready -U ${POSTGRES_USER:-glean} + timeout: 5s + image: postgres:16-alpine + networks: + - glean-network + restart: always + volumes: + - ${GLEAN_ROOT_PATH}/postgres:/var/lib/postgresql/data + redis: + command: redis-server --appendonly yes + container_name: glean-redis + env_file: + - ./envs/global.env + - .env + healthcheck: + interval: 10s + retries: 5 + test: + - CMD + - redis-cli + - ping + timeout: 5s + image: redis:7-alpine + networks: + - glean-network + restart: always + volumes: + - ${GLEAN_ROOT_PATH}/redis:/data + web: + container_name: glean-web + depends_on: + - backend + env_file: + - ./envs/global.env + - .env + image: ghcr.io/leslieleung/glean-web:0.1.4 + networks: + - glean-network + ports: + - ${PANEL_APP_PORT_HTTP:-80}:80 + restart: always + worker: + command: + - uv + - run + - --no-sync + - arq + - glean_worker.main.WorkerSettings + container_name: glean-worker + depends_on: + backend: + condition: service_healthy + postgres: + condition: service_healthy + redis: + condition: service_healthy + env_file: + - ./envs/global.env + - .env + environment: + DATABASE_URL: postgresql+asyncpg://${POSTGRES_USER:-glean}:${POSTGRES_PASSWORD:-glean}@postgres:5432/${POSTGRES_DB:-glean} + REDIS_URL: redis://redis:6379/0 + SECRET_KEY: ${SECRET_KEY:-} + image: ghcr.io/leslieleung/glean-backend:0.1.4 + networks: + - glean-network + restart: always diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/envs/default.env b/appstore/glean/0.1.4/envs/default.env similarity index 100% rename from appstore/speedtest-tracker-sqlite/1.10.3/envs/default.env rename to appstore/glean/0.1.4/envs/default.env diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/envs/global.env b/appstore/glean/0.1.4/envs/global.env similarity index 100% rename from appstore/speedtest-tracker-sqlite/1.10.3/envs/global.env rename to appstore/glean/0.1.4/envs/global.env diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/scripts/init.sh b/appstore/glean/0.1.4/scripts/init.sh similarity index 100% rename from appstore/speedtest-tracker-sqlite/1.10.3/scripts/init.sh rename to appstore/glean/0.1.4/scripts/init.sh diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/scripts/uninstall.sh b/appstore/glean/0.1.4/scripts/uninstall.sh similarity index 100% rename from appstore/speedtest-tracker-sqlite/1.10.3/scripts/uninstall.sh rename to appstore/glean/0.1.4/scripts/uninstall.sh diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/scripts/upgrade.sh b/appstore/glean/0.1.4/scripts/upgrade.sh similarity index 100% rename from appstore/speedtest-tracker-sqlite/1.10.3/scripts/upgrade.sh rename to appstore/glean/0.1.4/scripts/upgrade.sh diff --git a/appstore/glean/README.md b/appstore/glean/README.md new file mode 100644 index 000000000..a18778de4 --- /dev/null +++ b/appstore/glean/README.md @@ -0,0 +1,75 @@ +# Glean 拾灵 + +简短的介绍 + +![Glean 拾灵](https://file.lifebus.top/imgs/glean_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) + +## 核心功能 + +### 📰 RSS 订阅 + +订阅和管理 RSS/Atom 源,支持 OPML 导入导出 + +### 📚 智能阅读 + +简洁的阅读体验,支持内容过滤 + +### 🔖 稍后阅读 + +保存文章以便稍后阅读,支持自动清理 + +### 📁 文件夹与标签 + +多层级文件夹和标签组织内容 + +### ⭐ 收藏系统 + +收藏订阅文章或外部链接 + +### 🔧 后台同步 + +每 15 分钟自动更新订阅源 + +### 🔒 自托管 + +Docker 部署,完全掌控数据 + +### 🎨 现代界面 + +美观的暖色深色主题响应式界面 + +### 👨‍💼 管理后台 + +用户管理和系统监控 + +## 规划中的功能(WIP) + +### 🧠 智能推荐 + +基于 AI 的偏好学习和文章评分 + +### ⚙️ 规则引擎 + +支持 Jinja2 风格条件的自动化处理 + +### 🤖 AI 功能 + +摘要生成、自动打标、关键词提取(BYOK) + +### 📄 完整内容获取 + +为仅提供摘要的 RSS 源获取完整正文 + +### 🔌 Chrome 扩展 + +浏览器一键收藏 + +### 📱 移动端 PWA + +适配移动设备的渐进式 Web 应用 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/appstore/glean/data.yml b/appstore/glean/data.yml new file mode 100644 index 000000000..0afefeeb3 --- /dev/null +++ b/appstore/glean/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: glean + name: Glean 拾灵 + tags: + - WebSite + - Local + shortDescZh: 一个自托管的 RSS 阅读器和个人知识管理工具 + shortDescEn: A self-hosted RSS reader and personal knowledge management tool + type: website + crossVersionUpdate: true + limit: 0 + website: https://github.com/LeslieLeung/glean/ + github: https://github.com/LeslieLeung/glean/ + document: https://github.com/LeslieLeung/glean/ diff --git a/appstore/glean/logo.png b/appstore/glean/logo.png new file mode 100644 index 000000000..03eb863ca Binary files /dev/null and b/appstore/glean/logo.png differ diff --git a/appstore/opengist/1.11.1/.env b/appstore/opengist/1.11.1/.env new file mode 100644 index 000000000..1360e8438 --- /dev/null +++ b/appstore/opengist/1.11.1/.env @@ -0,0 +1,27 @@ +# 数据持久化路径 [必填] +OPENGIST_ROOT_PATH=/home/opengist + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=6157 + +# 外部访问地址 +OG_EXTERNAL_URL= + +# GitHub 客户端密钥 +OG_GITHUB_CLIENT_KEY= + +# GitHub 密钥 +OG_GITHUB_SECRET= + +# Gitea 地址 +OG_GITEA_URL=https://gitea.com/ + +# Gitea 名称 +OG_GITEA_NAME=Gitea + +# Gitea 客户端密钥 +OG_GITEA_CLIENT_KEY= + +# Gitea 密钥 +OG_GITEA_SECRET= + diff --git a/appstore/opengist/1.11.1/data.yml b/appstore/opengist/1.11.1/data.yml new file mode 100644 index 000000000..43655fe49 --- /dev/null +++ b/appstore/opengist/1.11.1/data.yml @@ -0,0 +1,66 @@ +additionalProperties: + formFields: + - default: "/home/opengist" + edit: true + envKey: OPENGIST_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 6157 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: OG_EXTERNAL_URL + labelZh: 外部访问地址 + labelEn: External access URL + required: false + type: text + - default: "" + edit: true + envKey: OG_GITHUB_CLIENT_KEY + labelZh: GitHub 客户端密钥 + labelEn: GitHub Client Key + required: false + type: text + - default: "" + edit: true + envKey: OG_GITHUB_SECRET + labelZh: GitHub 密钥 + labelEn: GitHub Secret + required: false + type: text + - default: "https://gitea.com/" + edit: true + envKey: OG_GITEA_URL + labelZh: Gitea 地址 + labelEn: Gitea URL + required: false + type: text + - default: "Gitea" + edit: true + envKey: OG_GITEA_NAME + labelZh: Gitea 名称 + labelEn: Gitea Name + required: false + type: text + - default: "" + edit: true + envKey: OG_GITEA_CLIENT_KEY + labelZh: Gitea 客户端密钥 + labelEn: Gitea Client Key + required: false + type: text + - default: "" + edit: true + envKey: OG_GITEA_SECRET + labelZh: Gitea 密钥 + labelEn: Gitea Secret + required: false + type: text diff --git a/appstore/opengist/1.11.1/docker-compose.yml b/appstore/opengist/1.11.1/docker-compose.yml new file mode 100644 index 000000000..9f7e42317 --- /dev/null +++ b/appstore/opengist/1.11.1/docker-compose.yml @@ -0,0 +1,33 @@ +networks: + 1panel-network: + external: true +services: + opengist: + container_name: opengist + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + - OG_SQLITE_JOURNAL_MODE=WAL + - OG_HTTP_HOST=0.0.0.0 + - OG_HTTP_PORT=6157 + - OG_SSH_HOST=0.0.0.0 + - OG_SSH_PORT=2222 + healthcheck: + interval: 30s + retries: 3 + test: + - CMD-SHELL + - curl -f http://localhost:6157/healthcheck + timeout: 10s + image: thomiceli/opengist:1.11.1 + labels: + createdBy: Apps + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:6157 + restart: always + volumes: + - ${OPENGIST_ROOT_PATH}/.opengist:/opengist diff --git a/appstore/speedtest-tracker/1.10.3/envs/default.env b/appstore/opengist/1.11.1/envs/default.env similarity index 100% rename from appstore/speedtest-tracker/1.10.3/envs/default.env rename to appstore/opengist/1.11.1/envs/default.env diff --git a/appstore/speedtest-tracker/1.10.3/envs/global.env b/appstore/opengist/1.11.1/envs/global.env similarity index 100% rename from appstore/speedtest-tracker/1.10.3/envs/global.env rename to appstore/opengist/1.11.1/envs/global.env diff --git a/appstore/speedtest-tracker/1.10.3/scripts/init.sh b/appstore/opengist/1.11.1/scripts/init.sh similarity index 100% rename from appstore/speedtest-tracker/1.10.3/scripts/init.sh rename to appstore/opengist/1.11.1/scripts/init.sh diff --git a/appstore/speedtest-tracker/1.10.3/scripts/uninstall.sh b/appstore/opengist/1.11.1/scripts/uninstall.sh similarity index 100% rename from appstore/speedtest-tracker/1.10.3/scripts/uninstall.sh rename to appstore/opengist/1.11.1/scripts/uninstall.sh diff --git a/appstore/speedtest-tracker/1.10.3/scripts/upgrade.sh b/appstore/opengist/1.11.1/scripts/upgrade.sh similarity index 100% rename from appstore/speedtest-tracker/1.10.3/scripts/upgrade.sh rename to appstore/opengist/1.11.1/scripts/upgrade.sh diff --git a/appstore/opengist/README.md b/appstore/opengist/README.md new file mode 100644 index 000000000..f7c687350 --- /dev/null +++ b/appstore/opengist/README.md @@ -0,0 +1,26 @@ +# Opengist + +自托管的粘贴板,基于 Git,Github Gist 的开源替代品。 + +![Opengist](https://file.lifebus.top/imgs/opengist_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) + +## 特征 + ++ 创建公开、未公开或私密的摘要 ++ 通过 Git 通过 HTTP 或 SSH 启动/克隆/拉取/推送片段 ++ 语法突出;Markdown 和 CSV 支持 ++ 搜索代码片段;浏览用户的片段、点赞和分支 ++ 将话题添加到摘要中 ++ 将摘要嵌入其他网站 ++ 修订历史 ++ 喜欢 / 分叉片段 ++ 下载原始文件或 ZIP 压缩档案 ++ OAuth2 登录 GitHub、GitLab、Gittea 和 OpenID Connect ++ 限制或解除对匿名用户可见的摘要 ++ Docker 支持 / Helm 图表 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/appstore/opengist/data.yml b/appstore/opengist/data.yml new file mode 100644 index 000000000..86b784de9 --- /dev/null +++ b/appstore/opengist/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: opengist + name: Opengist + tags: + - WebSite + - Local + shortDescZh: 自托管的粘贴板,基于 Git,Github Gist 的开源替代品 + shortDescEn: Self-hosted pastebin powered by Git, open-source alternative to Github Gist + type: website + crossVersionUpdate: true + limit: 0 + website: https://opengist.io/ + github: https://github.com/thomiceli/opengist + document: https://opengist.io/docs/ diff --git a/appstore/opengist/logo.png b/appstore/opengist/logo.png new file mode 100644 index 000000000..7092e907f Binary files /dev/null and b/appstore/opengist/logo.png differ diff --git a/appstore/opengist/logo.svg b/appstore/opengist/logo.svg new file mode 100644 index 000000000..90e07819a --- /dev/null +++ b/appstore/opengist/logo.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/.env b/appstore/speedtest-tracker-sqlite/1.11.0/.env similarity index 100% rename from appstore/speedtest-tracker-sqlite/1.10.3/.env rename to appstore/speedtest-tracker-sqlite/1.11.0/.env diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/data.yml b/appstore/speedtest-tracker-sqlite/1.11.0/data.yml similarity index 100% rename from appstore/speedtest-tracker-sqlite/1.10.3/data.yml rename to appstore/speedtest-tracker-sqlite/1.11.0/data.yml diff --git a/appstore/speedtest-tracker-sqlite/1.10.3/docker-compose.yml b/appstore/speedtest-tracker-sqlite/1.11.0/docker-compose.yml similarity index 91% rename from appstore/speedtest-tracker-sqlite/1.10.3/docker-compose.yml rename to appstore/speedtest-tracker-sqlite/1.11.0/docker-compose.yml index 1743d8bfa..110f23d74 100644 --- a/appstore/speedtest-tracker-sqlite/1.10.3/docker-compose.yml +++ b/appstore/speedtest-tracker-sqlite/1.11.0/docker-compose.yml @@ -14,7 +14,7 @@ services: - DISPLAY_TIMEZONE=Asia/Shanghai - DB_CONNECTION=sqlite - MAIL_MAILER=sqlite - image: linuxserver/speedtest-tracker:1.10.3 + image: linuxserver/speedtest-tracker:1.11.0 labels: createdBy: Apps network_mode: ${NETWORK_MODE} diff --git a/appstore/speedtest-tracker-sqlite/1.11.0/envs/default.env b/appstore/speedtest-tracker-sqlite/1.11.0/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/appstore/speedtest-tracker-sqlite/1.11.0/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/appstore/speedtest-tracker-sqlite/1.11.0/envs/global.env b/appstore/speedtest-tracker-sqlite/1.11.0/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/appstore/speedtest-tracker-sqlite/1.11.0/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/appstore/speedtest-tracker-sqlite/1.11.0/scripts/init.sh b/appstore/speedtest-tracker-sqlite/1.11.0/scripts/init.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/speedtest-tracker-sqlite/1.11.0/scripts/init.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/appstore/speedtest-tracker-sqlite/1.11.0/scripts/uninstall.sh b/appstore/speedtest-tracker-sqlite/1.11.0/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/appstore/speedtest-tracker-sqlite/1.11.0/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/appstore/speedtest-tracker-sqlite/1.11.0/scripts/upgrade.sh b/appstore/speedtest-tracker-sqlite/1.11.0/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/speedtest-tracker-sqlite/1.11.0/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/appstore/speedtest-tracker/1.10.3/.env b/appstore/speedtest-tracker/1.11.0/.env similarity index 100% rename from appstore/speedtest-tracker/1.10.3/.env rename to appstore/speedtest-tracker/1.11.0/.env diff --git a/appstore/speedtest-tracker/1.10.3/data.yml b/appstore/speedtest-tracker/1.11.0/data.yml similarity index 100% rename from appstore/speedtest-tracker/1.10.3/data.yml rename to appstore/speedtest-tracker/1.11.0/data.yml diff --git a/appstore/speedtest-tracker/1.10.3/docker-compose.yml b/appstore/speedtest-tracker/1.11.0/docker-compose.yml similarity index 90% rename from appstore/speedtest-tracker/1.10.3/docker-compose.yml rename to appstore/speedtest-tracker/1.11.0/docker-compose.yml index e6db7eed3..f77f25faf 100644 --- a/appstore/speedtest-tracker/1.10.3/docker-compose.yml +++ b/appstore/speedtest-tracker/1.11.0/docker-compose.yml @@ -12,7 +12,7 @@ services: - PGID=1000 - TZ=Asia/Shanghai - DISPLAY_TIMEZONE=Asia/Shanghai - image: linuxserver/speedtest-tracker:1.10.3 + image: linuxserver/speedtest-tracker:1.11.0 labels: createdBy: Apps network_mode: ${NETWORK_MODE} diff --git a/appstore/speedtest-tracker/1.11.0/envs/default.env b/appstore/speedtest-tracker/1.11.0/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/appstore/speedtest-tracker/1.11.0/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/appstore/speedtest-tracker/1.11.0/envs/global.env b/appstore/speedtest-tracker/1.11.0/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/appstore/speedtest-tracker/1.11.0/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/appstore/speedtest-tracker/1.11.0/scripts/init.sh b/appstore/speedtest-tracker/1.11.0/scripts/init.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/speedtest-tracker/1.11.0/scripts/init.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/appstore/speedtest-tracker/1.11.0/scripts/uninstall.sh b/appstore/speedtest-tracker/1.11.0/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/appstore/speedtest-tracker/1.11.0/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/appstore/speedtest-tracker/1.11.0/scripts/upgrade.sh b/appstore/speedtest-tracker/1.11.0/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/speedtest-tracker/1.11.0/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/dockge/glean/.env b/dockge/glean/.env new file mode 100644 index 000000000..cdeb2fc0d --- /dev/null +++ b/dockge/glean/.env @@ -0,0 +1,21 @@ +# 数据持久化路径 [必填] +GLEAN_ROOT_PATH=/home/glean + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=8080 + +# WebUI 后台端口 [必填] +PANEL_APP_PORT_ADMIN=3001 + +# 管理员用户名 [必填] +ADMIN_USERNAME=admin + +# 管理员密码 [必填] +ADMIN_PASSWORD= + +# 签名密钥 [必填] +SECRET_KEY= + +# 数据库密码 [必填] +POSTGRES_PASSWORD=glean + diff --git a/dockge/glean/docker-compose.yml b/dockge/glean/docker-compose.yml new file mode 100644 index 000000000..6483c528b --- /dev/null +++ b/dockge/glean/docker-compose.yml @@ -0,0 +1,147 @@ +networks: + 1panel-network: + external: true + glean-network: + driver: bridge +services: + admin: + container_name: glean-admin + depends_on: + - backend + env_file: + - ./envs/global.env + - .env + image: ghcr.io/leslieleung/glean-admin:0.1.4 + networks: + - glean-network + ports: + - ${PANEL_APP_PORT_ADMIN:-3001}:80 + restart: always + backend: + command: + - uv + - run + - --no-sync + - uvicorn + - glean_api.main:app + - --host + - 0.0.0.0 + - --port + - '8000' + container_name: glean + depends_on: + postgres: + condition: service_healthy + redis: + condition: service_healthy + env_file: + - ./envs/global.env + - .env + environment: + ADMIN_PASSWORD: ${ADMIN_PASSWORD:-} + ADMIN_ROLE: ${ADMIN_ROLE:-super_admin} + ADMIN_USERNAME: ${ADMIN_USERNAME:-admin} + CORS_ORIGINS: '["http://localhost", "http://localhost:3000", "http://localhost:3001"]' + CREATE_ADMIN: ${CREATE_ADMIN:-true} + DATABASE_URL: postgresql+asyncpg://${POSTGRES_USER:-glean}:${POSTGRES_PASSWORD:-glean}@postgres:5432/${POSTGRES_DB:-glean} + DEBUG: ${DEBUG:-false} + REDIS_URL: redis://redis:6379/0 + RUN_MIGRATIONS: 'true' + SECRET_KEY: ${SECRET_KEY:-change-me-in-production-use-a-long-random-string} + healthcheck: + interval: 10s + retries: 5 + start_period: 30s + test: + - CMD + - curl + - -f + - http://localhost:8000/api/health + timeout: 5s + image: ghcr.io/leslieleung/glean-backend:0.1.4 + labels: + createdBy: Apps + networks: + - glean-network + restart: always + postgres: + container_name: glean-postgres + env_file: + - ./envs/global.env + - .env + environment: + POSTGRES_DB: ${POSTGRES_DB:-glean} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-glean} + POSTGRES_USER: ${POSTGRES_USER:-glean} + healthcheck: + interval: 10s + retries: 5 + test: + - CMD-SHELL + - pg_isready -U ${POSTGRES_USER:-glean} + timeout: 5s + image: postgres:16-alpine + networks: + - glean-network + restart: always + volumes: + - ${GLEAN_ROOT_PATH}/postgres:/var/lib/postgresql/data + redis: + command: redis-server --appendonly yes + container_name: glean-redis + env_file: + - ./envs/global.env + - .env + healthcheck: + interval: 10s + retries: 5 + test: + - CMD + - redis-cli + - ping + timeout: 5s + image: redis:7-alpine + networks: + - glean-network + restart: always + volumes: + - ${GLEAN_ROOT_PATH}/redis:/data + web: + container_name: glean-web + depends_on: + - backend + env_file: + - ./envs/global.env + - .env + image: ghcr.io/leslieleung/glean-web:0.1.4 + networks: + - glean-network + ports: + - ${PANEL_APP_PORT_HTTP:-80}:80 + restart: always + worker: + command: + - uv + - run + - --no-sync + - arq + - glean_worker.main.WorkerSettings + container_name: glean-worker + depends_on: + backend: + condition: service_healthy + postgres: + condition: service_healthy + redis: + condition: service_healthy + env_file: + - ./envs/global.env + - .env + environment: + DATABASE_URL: postgresql+asyncpg://${POSTGRES_USER:-glean}:${POSTGRES_PASSWORD:-glean}@postgres:5432/${POSTGRES_DB:-glean} + REDIS_URL: redis://redis:6379/0 + SECRET_KEY: ${SECRET_KEY:-} + image: ghcr.io/leslieleung/glean-backend:0.1.4 + networks: + - glean-network + restart: always diff --git a/dockge/glean/envs/default.env b/dockge/glean/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/dockge/glean/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/dockge/glean/envs/global.env b/dockge/glean/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/dockge/glean/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/dockge/opengist/.env b/dockge/opengist/.env new file mode 100644 index 000000000..1360e8438 --- /dev/null +++ b/dockge/opengist/.env @@ -0,0 +1,27 @@ +# 数据持久化路径 [必填] +OPENGIST_ROOT_PATH=/home/opengist + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=6157 + +# 外部访问地址 +OG_EXTERNAL_URL= + +# GitHub 客户端密钥 +OG_GITHUB_CLIENT_KEY= + +# GitHub 密钥 +OG_GITHUB_SECRET= + +# Gitea 地址 +OG_GITEA_URL=https://gitea.com/ + +# Gitea 名称 +OG_GITEA_NAME=Gitea + +# Gitea 客户端密钥 +OG_GITEA_CLIENT_KEY= + +# Gitea 密钥 +OG_GITEA_SECRET= + diff --git a/dockge/opengist/docker-compose.yml b/dockge/opengist/docker-compose.yml new file mode 100644 index 000000000..9f7e42317 --- /dev/null +++ b/dockge/opengist/docker-compose.yml @@ -0,0 +1,33 @@ +networks: + 1panel-network: + external: true +services: + opengist: + container_name: opengist + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + - OG_SQLITE_JOURNAL_MODE=WAL + - OG_HTTP_HOST=0.0.0.0 + - OG_HTTP_PORT=6157 + - OG_SSH_HOST=0.0.0.0 + - OG_SSH_PORT=2222 + healthcheck: + interval: 30s + retries: 3 + test: + - CMD-SHELL + - curl -f http://localhost:6157/healthcheck + timeout: 10s + image: thomiceli/opengist:1.11.1 + labels: + createdBy: Apps + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:6157 + restart: always + volumes: + - ${OPENGIST_ROOT_PATH}/.opengist:/opengist diff --git a/dockge/opengist/envs/default.env b/dockge/opengist/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/dockge/opengist/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/dockge/opengist/envs/global.env b/dockge/opengist/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/dockge/opengist/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/dockge/speedtest-tracker-sqlite/docker-compose.yml b/dockge/speedtest-tracker-sqlite/docker-compose.yml index 1743d8bfa..110f23d74 100644 --- a/dockge/speedtest-tracker-sqlite/docker-compose.yml +++ b/dockge/speedtest-tracker-sqlite/docker-compose.yml @@ -14,7 +14,7 @@ services: - DISPLAY_TIMEZONE=Asia/Shanghai - DB_CONNECTION=sqlite - MAIL_MAILER=sqlite - image: linuxserver/speedtest-tracker:1.10.3 + image: linuxserver/speedtest-tracker:1.11.0 labels: createdBy: Apps network_mode: ${NETWORK_MODE} diff --git a/dockge/speedtest-tracker/docker-compose.yml b/dockge/speedtest-tracker/docker-compose.yml index e6db7eed3..f77f25faf 100644 --- a/dockge/speedtest-tracker/docker-compose.yml +++ b/dockge/speedtest-tracker/docker-compose.yml @@ -12,7 +12,7 @@ services: - PGID=1000 - TZ=Asia/Shanghai - DISPLAY_TIMEZONE=Asia/Shanghai - image: linuxserver/speedtest-tracker:1.10.3 + image: linuxserver/speedtest-tracker:1.11.0 labels: createdBy: Apps network_mode: ${NETWORK_MODE}