发布应用 Readeck

Signed-off-by: Meng Sen <qyg2297248353@gmail.com>
This commit is contained in:
Meng Sen
2025-07-18 12:25:40 +08:00
parent 44b32af3dc
commit 4166ce5089
13 changed files with 341 additions and 0 deletions

1
.github/README.md vendored
View File

@@ -144,6 +144,7 @@
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/qbittorrent/logo.png" width="22"/> | qBittorrent | https://www.qbittorrent.org/ | qBittorrent 比特流客户端 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/qinglong/logo.png" width="22"/> | 青龙 | https://qinglong.online/ | 【青龙】支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/radarr/logo.png" width="22"/> | radarr | https://radarr.video/ | 电影组织者/管理员,适用于 Usenet 和 torrent 用户 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/readeck/logo.png" width="22"/> | Readeck | https://readeck.org/ | 网页内容存档工具 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/reader3/logo.png" width="22"/> | 阅读3 | https://github.com/hectorqin/reader/ | 【阅读3】阅读3服务器版不需要手机 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/redis/logo.png" width="22"/> | Redis | https://redis.io/ | 从世界上最快的内存数据库创建者那里获取该数据库 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/rsshub/logo.png" width="22"/> | RssHub | https://rsshub.app/ | 从任何内容生成 RSS/Atom/JSON 订阅源 | |

View File

@@ -139,6 +139,7 @@
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/qbittorrent/logo.png" width="22"/> | qBittorrent | https://www.qbittorrent.org/ | qBittorrent 比特流客户端 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/qinglong/logo.png" width="22"/> | 青龙 | https://qinglong.online/ | 【青龙】支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/radarr/logo.png" width="22"/> | radarr | https://radarr.video/ | 电影组织者/管理员,适用于 Usenet 和 torrent 用户 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/readeck/logo.png" width="22"/> | Readeck | https://readeck.org/ | 网页内容存档工具 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/reader3/logo.png" width="22"/> | 阅读3 | https://github.com/hectorqin/reader/ | 【阅读3】阅读3服务器版不需要手机 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/redis/logo.png" width="22"/> | Redis | https://redis.io/ | 从世界上最快的内存数据库创建者那里获取该数据库 | |
| 🟢 | <img height="22" src="https://file.lifebus.top/apps/rsshub/logo.png" width="22"/> | RssHub | https://rsshub.app/ | 从任何内容生成 RSS/Atom/JSON 订阅源 | |

View File

@@ -0,0 +1,164 @@
additionalProperties:
formFields:
- child:
default: ""
envKey: PANEL_POSTGRES_SERVICE
required: true
type: service
default: postgresql
envKey: PANEL_POSTGRES_TYPE
labelZh: Postgres 服务 (前置检查)
labelEn: Postgres Service (Pre-check)
required: true
type: apps
values:
- label: PostgreSQL
value: postgresql
- default: "/home/readeck"
edit: true
envKey: READECK_ROOT_PATH
labelZh: 数据持久化路径
labelEn: Data persistence path
required: true
type: text
- default: 8000
edit: true
envKey: PANEL_APP_PORT_HTTP
labelZh: WebUI 端口
labelEn: WebUI port
required: true
rule: paramPort
type: number
- default: "127.0.0.1"
edit: true
envKey: POSTGRES_HOST
labelZh: 数据库 主机地址
labelEn: Database Host
required: true
type: text
- default: 5432
edit: true
envKey: POSTGRES_PORT
labelZh: 数据库 端口
labelEn: Database Port
required: true
rule: paramPort
type: number
- default: "readeck"
edit: true
envKey: POSTGRES_NAME
labelZh: 数据库 名称
labelEn: Database Name
required: true
rule: paramCommon
type: text
- default: "readeck"
edit: true
envKey: POSTGRES_USER
labelZh: 数据库 用户名
labelEn: Database Username
required: true
type: text
- default: ""
edit: true
envKey: POSTGRES_PASSWORD
labelZh: 数据库 密码
labelEn: Database Password
random: true
required: true
rule: paramComplexity
type: password
- default: "/"
edit: true
envKey: READECK_SERVER_PREFIX
labelZh: 前缀路径
labelEn: Prefix path
required: false
type: text
- default: ""
edit: true
envKey: READECK_ALLOWED_HOSTS
labelZh: HTTP 请求中允许的主机名列表
labelEn: HTTP request allowed host name list
required: false
type: text
- default: ""
edit: true
envKey: READECK_SERVER_BASE_URL
labelZh: 绑定域名
labelEn: Binding domain
required: false
type: text
- default: 24
edit: true
envKey: READECK_PUBLIC_SHARE_TTL
labelZh: 分享有效期
labelEn: Share validity period
required: true
type: number
- default: "smtp.qq.com"
edit: true
envKey: READECK_MAIL_HOST
labelZh: 邮件服务器
labelEn: Mail Server
required: false
type: text
- default: 465
edit: true
envKey: READECK_MAIL_PORT
labelZh: 邮件服务器 端口
labelEn: Mail Server Port
required: false
type: number
- default: ""
edit: true
envKey: READECK_MAIL_USERNAME
labelZh: 邮件鉴权 用户名
labelEn: Mail Username
required: false
type: text
- default: ""
edit: true
envKey: READECK_MAIL_PASSWORD
labelZh: 邮件鉴权 密码
labelEn: Mail Password
required: false
type: password
- default: ""
edit: true
envKey: READECK_MAIL_FROM
labelZh: 邮件发送者
labelEn: Mail Sender
required: false
type: text
- default: ""
edit: true
envKey: READECK_MAIL_FROMNOREPLY
labelZh: 邮件发送者 (无回复)
labelEn: Mail Sender (No Reply)
required: false
type: text
- default: "false"
edit: true
envKey: READECK_MAIL_INSECURE
labelZh: 服务器证书验证
labelEn: Server certificate verification
required: false
type: select
values:
- label: 不验证
value: "true"
- label: 验证
value: "false"
- default: ""
edit: true
envKey: READECK_MAIL_ENCRYPTION
labelZh: SMTP 主机 加密方式
labelEn: SMTP Host Encryption Method
required: false
type: select
values:
- label: StartTLS
value: "starttls"
- label: SSL/TLS
value: "ssltls"

View File

@@ -0,0 +1,31 @@
networks:
1panel-network:
external: true
services:
readeck:
image: codeberg.org/readeck/readeck:0.19.1
container_name: ${CONTAINER_NAME}
labels:
createdBy: "Apps"
restart: always
networks:
- 1panel-network
ports:
- ${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_HTTP}
env_file:
- ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env}
- ${ENV_FILE:-/etc/1panel/envs/default.env}
healthcheck:
test: [ "CMD", "/bin/readeck", "healthcheck", "-config", "config.toml" ]
interval: 30s
timeout: 2s
retries: 3
volumes:
- ${READECK_ROOT_PATH}/data:/data
environment:
- TZ=Asia/Shanghai
- READECK_LOG_LEVEL=info
- READECK_SERVER_HOST=0.0.0.0
- READECK_SERVER_PORT=${PANEL_APP_PORT_HTTP}
- READECK_DATABASE_SOURCE=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_NAME}

View File

@@ -0,0 +1,2 @@
# copyright© 2024 XinJiang Ms Studio
ENV_FILE=.env

View File

@@ -0,0 +1,2 @@
# copyright© 2024 XinJiang Ms Studio
TZ=Asia/Shanghai

View File

@@ -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

View File

@@ -0,0 +1,10 @@
#!/bin/bash
if [ -f .env ]; then
source .env
echo "Check Finish."
else
echo "Error: .env file not found."
fi

View File

@@ -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

66
apps/readeck-pg/README.md Normal file
View File

@@ -0,0 +1,66 @@
# Readeck
Readeck 是一个简单的网络应用程序,可让您保存您喜欢并希望永久保留的网页的宝贵可读内容。
将其视为书签管理器和稍后阅读工具。
![Readeck](https://file.lifebus.top/imgs/readeck_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)
## 简介
Readeck 是一个开源的网页内容存档工具,它不仅能像普通书签管理器一样保存链接,还能将网页内容(包括文字、图片甚至视频)完整打包成离线文件。
就算原网站倒闭跑路,你保存的内容依然妥妥存在自己的服务器里!
## 特性
### 🔖 书签
喜欢你正在阅读的页面?把链接粘贴到 Readeck 就完成了!
### 📸 文章、图片和视频
Readeck 会保存网页的可读内容,方便您稍后阅读。它还能检测页面内容是图片还是视频,并相应地调整处理方式。
### ⭐ 标签、收藏、存档
将书签移动到档案或收藏夹并添加任意数量的标签。
### 🖍️ 亮点
突出显示书签的重要内容,以便以后轻松找到。
### 🗃️ 收藏集
如果您需要一个专门的部分来存储过去两周内标有“cat”的所有书签Readeck 可让您将此搜索查询保存到一个集合中,以便您以后访问它。
### 📖 电子书导出
还有什么比在电子阅读器上阅读你收藏的文章更棒的呢?你可以将任何文章导出为电子书文件 (EPUB)。你甚至可以将整个收藏集导出为一本书!
除此之外,如果您的电子阅读器支持 OPDS您可以直接从电子阅读器访问 Readeck 的目录和收藏。
### 🔎 全文搜索
无论您需要从文章中查找模糊的文字,还是查找具有特定标签或来自特定网站的所有文章,我们都能满足您的需求!
### 🚀 快!
Readeck 是对那些看似枯燥乏味却久经考验的技术产品的现代诠释。它保证了极快的响应时间和流畅的用户体验。
### 🔒 专为保护您的隐私和长期存档而打造
你喜欢的这篇文章明年还会上线吗?十年后呢?也许不会;也许它连文字和图片都消失了。出于这个原因,也为了保护你的隐私,当你保存链接时,所有文字和图片都会存储在你的
Readeck 实例中。
除视频外,您的浏览器不会向外部网站发出任何请求。
### 🧩 浏览器扩展
想在浏览时保存一些内容以供日后使用?无需复制粘贴链接。安装浏览器扩展程序,一键保存书签!
+ [Mozilla Firefox](https://addons.mozilla.org/en-US/firefox/addon/readeck/)
+ [Google Chrome](https://chromewebstore.google.com/detail/readeck/jnmcpmfimecibicbojhopfkcbmkafhee)
---
![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png)

14
apps/readeck-pg/data.yml Normal file
View File

@@ -0,0 +1,14 @@
additionalProperties:
key: readeck-pg
name: Readeck (PostgreSQL版)
tags:
- WebSite
- Local
shortDescZh: 网页内容存档工具
shortDescEn: web content archiving tool
type: website
crossVersionUpdate: true
limit: 0
website: https://readeck.org/
github: https://codeberg.org/readeck/readeck/
document: https://readeck.org/

BIN
apps/readeck-pg/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

16
apps/readeck-pg/logo.svg Normal file
View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="512" height="512"
viewBox="0 0 512 512">
<path fill-rule="nonzero" fill="rgb(2.352941%, 29.803922%, 36.078431%)" fill-opacity="1"
d="M 89.148438 0.0273438 L 422.863281 0.0273438 C 472.09375 0.0273438 512.003906 39.9375 512.003906 89.167969 L 512.003906 422.882812 C 512.003906 472.113281 472.09375 512.019531 422.863281 512.019531 L 89.148438 512.019531 C 39.921875 512.019531 0.0117188 472.113281 0.0117188 422.882812 L 0.0117188 89.167969 C 0.0117188 39.9375 39.921875 0.0273438 89.148438 0.0273438 Z M 89.148438 0.0273438 "/>
<path fill-rule="nonzero" fill="rgb(98.431373%, 80.784314%, 33.333333%)" fill-opacity="1"
d="M 373.089844 170.71875 L 206.734375 248.296875 L 206.734375 367.457031 L 418.730469 268.601562 Z M 373.089844 170.71875 "/>
<path fill-rule="nonzero" fill="rgb(27.45098%, 73.333333%, 83.921569%)" fill-opacity="1"
d="M 206.734375 250.792969 L 206.734375 369.964844 L 383.203125 452.25 L 372.625 387.726562 L 428.839844 354.371094 Z M 206.734375 250.792969 "/>
<path fill-rule="nonzero" fill="rgb(100%, 98.039216%, 93.72549%)" fill-opacity="1"
d="M 98.734375 119.382812 L 206.734375 119.382812 L 206.734375 439.378906 L 98.734375 439.378906 Z M 98.734375 119.382812 "/>
<path fill-rule="nonzero" fill="rgb(0%, 0%, 0%)" fill-opacity="0.313725"
d="M 98.734375 119.378906 L 98.734375 126.277344 L 411.328125 272.050781 L 418.734375 268.597656 Z M 98.734375 119.378906 "/>
<path fill-rule="nonzero" fill="rgb(27.45098%, 73.333333%, 83.921569%)" fill-opacity="1"
d="M 206.734375 59.800781 L 98.734375 119.382812 L 418.730469 268.601562 L 418.730469 149.4375 Z M 206.734375 59.800781 "/>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB