From fbeaf1554b3e174bed8b3dc9020fee7bc84329f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=90=8C=E6=A3=AE?= Date: Tue, 10 Sep 2024 12:03:19 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=20Jellyseerr?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 萌森 --- apps/jellyseerr/0.9.5.1/data.yml | 39 ++++++ apps/jellyseerr/0.9.5.1/docker-compose.yml | 20 +++ apps/jellyseerr/0.9.5.1/scripts/init.sh | 15 +++ apps/jellyseerr/0.9.5.1/scripts/uninstall.sh | 10 ++ apps/jellyseerr/0.9.5.1/scripts/upgrade.sh | 15 +++ apps/jellyseerr/README.md | 121 +++++++++++++++++++ apps/jellyseerr/data.yml | 19 +++ apps/jellyseerr/logo.png | Bin 0 -> 29851 bytes 8 files changed, 239 insertions(+) create mode 100644 apps/jellyseerr/0.9.5.1/data.yml create mode 100644 apps/jellyseerr/0.9.5.1/docker-compose.yml create mode 100644 apps/jellyseerr/0.9.5.1/scripts/init.sh create mode 100644 apps/jellyseerr/0.9.5.1/scripts/uninstall.sh create mode 100644 apps/jellyseerr/0.9.5.1/scripts/upgrade.sh create mode 100644 apps/jellyseerr/README.md create mode 100644 apps/jellyseerr/data.yml create mode 100644 apps/jellyseerr/logo.png diff --git a/apps/jellyseerr/0.9.5.1/data.yml b/apps/jellyseerr/0.9.5.1/data.yml new file mode 100644 index 000000000..da742d365 --- /dev/null +++ b/apps/jellyseerr/0.9.5.1/data.yml @@ -0,0 +1,39 @@ +additionalProperties: + formFields: + - default: 1188 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: API 端口 + labelEn: API Port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: TOKEN + labelZh: 访问令牌以保护您的 API + labelEn: Access Token to protect your API + required: false + type: text + - default: "" + edit: true + envKey: AUTHKEY + labelZh: DeepL官方提供的API Auth Key + labelEn: Official API Auth Key provided by DeepL + required: false + type: text + - default: "" + edit: true + envKey: DL_SESSION + labelZh: DeepL Pro 帐户 dl_session cookie + labelEn: DeepL Pro account dl_session cookie + required: false + type: text + - default: "" + edit: true + envKey: PROXY + labelZh: http代理服务器地址 + labelEn: http proxy server address + required: false + rule: paramExtUrl + type: text diff --git a/apps/jellyseerr/0.9.5.1/docker-compose.yml b/apps/jellyseerr/0.9.5.1/docker-compose.yml new file mode 100644 index 000000000..04ed48ea9 --- /dev/null +++ b/apps/jellyseerr/0.9.5.1/docker-compose.yml @@ -0,0 +1,20 @@ +networks: + 1panel-network: + external: true + +services: + deeplx: + image: qyg2297248353/deeplx:v0.9.5.1 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:1188 + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + environment: + - PORT=1188 diff --git a/apps/jellyseerr/0.9.5.1/scripts/init.sh b/apps/jellyseerr/0.9.5.1/scripts/init.sh new file mode 100644 index 000000000..77b849120 --- /dev/null +++ b/apps/jellyseerr/0.9.5.1/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/jellyseerr/0.9.5.1/scripts/uninstall.sh b/apps/jellyseerr/0.9.5.1/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/apps/jellyseerr/0.9.5.1/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/jellyseerr/0.9.5.1/scripts/upgrade.sh b/apps/jellyseerr/0.9.5.1/scripts/upgrade.sh new file mode 100644 index 000000000..77b849120 --- /dev/null +++ b/apps/jellyseerr/0.9.5.1/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/jellyseerr/README.md b/apps/jellyseerr/README.md new file mode 100644 index 000000000..01a62fe95 --- /dev/null +++ b/apps/jellyseerr/README.md @@ -0,0 +1,121 @@ +# DeepLX + +强大的 DeepL 翻译 API + +![DeepLX](https://file.lifebus.top/imgs/deeplx_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) + +## 简介 + +DeepLX 最初由 zu1k 命名并发布,尽管 zu1k 此后已停止维护它并删除了相关存储库。 + +感谢zu1k的贡献。 + +这是zu1k设计的DeepLX Docker镜像的备份,没有任何修改。 + +## 安装说明 + +### http代理服务器地址 + +> 基本格式 + +```shell +# 无鉴权代理 +http://127.0.0.1:7890 +# 有鉴权代理 +http://:@127.0.0.1:7890 +``` + +### 访问令牌以保护您的 API + +> 请注意,如果您不使用访问令牌,您的 API 可能会被滥用。 + +接口调用时,您可以使用 `X-Access-Token` 请求头来传递访问令牌。 + +### DeepL官方提供的API Auth Key + +开通DeepL API后,您将获得一个API Auth Key,您可以使用它来访问DeepL API。 + +### DeepL Pro 帐户 dl_session cookie + +如果您有DeepL Pro帐户,您可以使用 `dl_session` cookie 来访问DeepL API。 + +## 接口简介 + +### 免费端点 + +模拟DeepL iOS客户端发起翻译请求。无限制,但在一定时间内频繁请求会导致429错误。 + +接口:`/translate` +请求方式:POST +请求头: + +| Header | Description | Value | +|:----------------|:--------------------------------------|:---------------------------| +| `Content-Type` | The content type of the request body. | `application/json` | +| `Authorization` | The access token to protect your API. | `Bearer your_access_token` | + +> 如果无法使用 `Authorization` 请求头,您可以使用 `URL Params` 传递 `Authorization`。 +> +> 例如:`/translate?token=your_access_token` + +请求体: + +| 参数名 | 字段类型 | 描述 | 是否必须 | +|:--------------|:---------|:--------|:-------| +| `text` | `string` | 待翻译字段。 | `true` | +| `source_lang` | `string` | 源语言代码 | `true` | +| `target_lang` | `string` | 目标语言代码。 | `true` | + +请求体 JSON 示例: + +```json +{ + "text": "你听说过这个吗?", + "source_lang": "ZH", + "target_lang": "EN" +} +``` + +响应体: + +```json +{ + "alternatives": [ + "Did you hear about this?", + "You've heard about this?", + "You've heard of this?" + ], + "code": 200, + "data": "Have you heard about this?", + "id": 8356681003, + "method": "Free", + "source_lang": "ZH", + "target_lang": "EN" +} +``` + +### 专业端点 + +模拟 DeepL 专业版账户发起翻译请求。无限制,可有效避免 429 问题,但需要提供专业账户的 dl_session 参数,否则无法使用。 + +接口:`/v1/translate` +请求方式:POST + +> 其他参数与免费端点相同。 + +### 官方端点 + +模拟 DeepL 官方 API 发起翻译请求。无限制,但在一定时间内频繁请求将导致 429 错误。 + +接口:`/v2/translate` +请求方式:POST + +> 其他参数与免费端点相同。 +> +> 更多官方API配置请参考 [DeepL 官方文档](https://developers.deepl.com/docs/api-reference/translate) + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/jellyseerr/data.yml b/apps/jellyseerr/data.yml new file mode 100644 index 000000000..4730d72b5 --- /dev/null +++ b/apps/jellyseerr/data.yml @@ -0,0 +1,19 @@ +name: Jellyseerr +title: Jellyseerr +description: 满足您所有媒体需求的一站式平台 +additionalProperties: + key: jellyseerr + name: Jellyseerr + tags: + - WebSite + - Media + - Middleware + - Local + shortDescZh: 满足您所有媒体需求的一站式平台 + shortDescEn: A one-stop platform to meet all your media needs + type: website + crossVersionUpdate: true + limit: 0 + website: https://docs.jellyseerr.dev/ + github: https://github.com/Fallenbagel/jellyseerr/ + document: https://docs.jellyseerr.dev/ diff --git a/apps/jellyseerr/logo.png b/apps/jellyseerr/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3314de2b121b716d16faa8f07ad3bf832a73b574 GIT binary patch literal 29851 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