From 55e792d4e308b11b0397c6a1f64324baba0e2ab6 Mon Sep 17 00:00:00 2001 From: zhongkunming <73384930+zhongkunming@users.noreply.github.com> Date: Sat, 24 May 2025 15:04:10 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=88=A0=E9=99=A4=20qBittorrent-ee?= =?UTF-8?q?=20=E5=BA=94=E7=94=A8=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 删除了 qBittorrent-ee应用的多个版本配置文件和文档: - 移除 5.1.0.10 和 latest 版本的 data.yml 和 docker-compose.yml - 删除应用基本信息文件 data.yml - 移除 README.md 文档 此次更改将 qBittorrent-ee 应用从项目中完全移除。 --- qBittorrent-ee/5.1.0.10/data.yml | 20 -- qBittorrent-ee/5.1.0.10/docker-compose.yml | 26 --- qBittorrent-ee/README.md | 242 --------------------- qBittorrent-ee/data.yml | 19 -- qBittorrent-ee/latest/data.yml | 20 -- qBittorrent-ee/latest/docker-compose.yml | 26 --- qBittorrent-ee/logo.png | Bin 5426 -> 0 bytes 7 files changed, 353 deletions(-) delete mode 100644 qBittorrent-ee/5.1.0.10/data.yml delete mode 100644 qBittorrent-ee/5.1.0.10/docker-compose.yml delete mode 100644 qBittorrent-ee/README.md delete mode 100644 qBittorrent-ee/data.yml delete mode 100644 qBittorrent-ee/latest/data.yml delete mode 100644 qBittorrent-ee/latest/docker-compose.yml delete mode 100644 qBittorrent-ee/logo.png diff --git a/qBittorrent-ee/5.1.0.10/data.yml b/qBittorrent-ee/5.1.0.10/data.yml deleted file mode 100644 index aed19682c..000000000 --- a/qBittorrent-ee/5.1.0.10/data.yml +++ /dev/null @@ -1,20 +0,0 @@ -additionalProperties: - formFields: - - default: 40118 - edit: true - envKey: PANEL_APP_PORT_HTTP - labelEn: WebUI Port - labelZh: 网页端口 - required: true - rule: paramPort - type: number - - - default: 40119 - edit: true - envKey: PANEL_APP_PORT_PEER - labelEn: Peer Port - labelZh: BT端口 - required: true - rule: paramPort - type: number - diff --git a/qBittorrent-ee/5.1.0.10/docker-compose.yml b/qBittorrent-ee/5.1.0.10/docker-compose.yml deleted file mode 100644 index 64a11c28e..000000000 --- a/qBittorrent-ee/5.1.0.10/docker-compose.yml +++ /dev/null @@ -1,26 +0,0 @@ -networks: - 1panel-network: - external: true - -services: - qbittorrent: - container_name: ${CONTAINER_NAME} - environment: - - PUID=1000 - - PGID=1000 - - TZ=Asia/Shanghai - - WEBUIPORT=${PANEL_APP_PORT_HTTP} - - ENABLE_DOWNLOADS_PERM_FIX=true - image: superng6/qbittorrentee:5.1.0.10 - labels: - createdBy: "Apps" - networks: - - 1panel-network - ports: - - ${PANEL_APP_PORT_PEER}:6881 - - ${PANEL_APP_PORT_PEER}:6881/udp - - ${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_HTTP} - restart: always - volumes: - - ./data/config:/config - - ./data/downloads:/downloads diff --git a/qBittorrent-ee/README.md b/qBittorrent-ee/README.md deleted file mode 100644 index ba39042e8..000000000 --- a/qBittorrent-ee/README.md +++ /dev/null @@ -1,242 +0,0 @@ -## 支持群晖、威联通等x64、arm64、arm32平台nas - -博客:https://sleele.com/2020/01/09/docker-qbittorrent增强版,反迅雷吸血 -GitHub:https://github.com/SuperNG6/Docker-qBittorrent-Enhanced-Edition - -[https://hub.docker.com/r/superng6/qbittorrentee](https://hub.docker.com/r/superng6/qbittorrentee) - -### 感谢以下项目: - -[https://github.com/qbittorrent/qBittorrent](https://github.com/qbittorrent/qBittorrent) -[https://github.com/c0re100/qBittorrent-Enhanced-Edition](https://github.com/c0re100/qBittorrent-Enhanced-Edition) -[https://github.com/ngosang/trackerslist]( https://github.com/ngosang/trackerslist) - -### 其他项目 Docker qBittorrent 中国优化版 - -https://github.com/SuperNG6/docker-qbittorrent -https://hub.docker.com/r/superng6/qbittorrent - -# 本镜像的一些优点 - -- 全平台架构`x86-64`、`arm64`、`armhf` -- 静态编译qbittorrentee -- 做了usermapping,使用你自己的账户权限来运行,这点对于群辉来说尤其重要 -- 纯qBittorrent-Enhanced-Edition,没有包含多于的服务 -- 默认上海时区 Asia/Shanghai -- qBittorrent-Enhanced-Edition屏蔽吸血客户端 -- 内置优化过的conf文件,减少手工设置 -- 默认中文 -- 内置400条tracker方便在连接GitHub出错时使用 -- 自动向所有tracker服务器汇报,加快下载速度,提升连接数 -- 提供了自定义用户名密码功能 - -# Architecture - -### qBittorrent Enhanced Edition latest - -| Architecture | Tag | -|--------------|--------| -| x86-64 | latest | -| arm64 | latest | -| armhf | latest | - -# Changelogs - -## 2025/03/11 - - 1、更新 base image,增加curl - 2、新增 ENABLE_DOWNLOADS_PERM_FIX变量(默认`ENABLE_DOWNLOADS_PERM_FIX=true`): - 当`=true`时,则对`/downloads`文件夹进行权限修复; - 当`=false`时,则不对`/downloads`文件夹进行权限修复; - -## 2025/02/18 - - 1、更新 base image - 2、回退 s6-overlay V2,V3太复杂了 - 3、默认对/config /downloads 执行chown权限设置,避免部分小白遇到读写问题 - -## 2024/09/10 - - 1、更新 base image - 2、更新 s6-overlay V3 @ssfdust - 3、增加 healtcheck script @ssfdust - - 新增环境变量 @ssfdust - WEB_PASSWORD=veryscrect web密码环境变量 - WEB_PASSWORD_FILE=/path/to/secrets web密码文件环境变量 - WEB_PBKDF2_PASSWORD=@Bytes(...) web密码密文环境变量 - WEB_PBKDF2_PASSWORD_FILE=/path/to/secrets web密码密文文件环境变量 - - 4、感谢 @ssfdust PR - -## 2021/04/15 - - 1、增加了大量历史版本,详情请见 docker hub tags - https://hub.docker.com/r/superng6/qbittorrentee/tags?page=1&ordering=last_updated - -## 2021/02/07 - - 1、qBittorrent Enhanced Edition update to v4.3.3.10 - -## 2020/11/30 - - 1、自动同步更新最新版本qBittorrent Enhanced Edition - -## 2020/11/06 - - 1、qBittorrent Enhanced Edition update to v4.3.0.10 - 2、x86-64、arm64、armhf由自编译转为官方静态编译版 - 3、减小镜像体积 - -## 2020/09/08 - - 1、qBittorrent Enhanced Edition update to v4.2.5.16 - -## 2020/09/07 - - 1、qBittorrent Enhanced Edition update to v4.2.5.15 - 2、libtorrent update to 1.2.10-0f0afec8c (Fix #127) - 3、Optional Button for re-enable Torrent IP Filter (Tools>Enable Torrent IP Filter). - -## 2020/08/21 - - 1、更新LIBTORRENT v1.2.8,QBITTORRENT v4.2.5.13 - 2、更新base image - 3、没别的更新了,已经很完善了 - -## 2020/01/13 - - 1、构建全平台架构镜像`x86-64`、`arm64`、`armhf` - 2、设置磁盘缓存,默认参数`x86-64:512M`、`arm64:128M`、`armhf:64M` - -## 2020/01/12 - - 1、默认缓存设置参数为 x86-64:512M、arm64:64M,提升下载性能 - 2、除了自动更新tracker外,内置400多条tracker,默认启用,以便于在GitHub连接有问题时使用 - -## 2020/01/06 - - 1、修改conf,优化参数,减少手动设置 - 2、自动下载并更新tracker list - 3、默认中文 - 4、基于qBittorrent-Enhanced-Edition 4.1.9.15 最新版的SSL有问题 - -# 内外网访问 - -webui端口不一致的情况下,请手动关闭如下选项(默认配置已关闭,如未关闭请手动关闭) -https://cdn.jsdelivr.net/gh/SuperNG6/pic@master/uPic/2021-02-02/CIwC4l.png -该操作等价于修改配置文件中的如下选项 - -```` -WebUI\CSRFProtection=false -WebUI\ClickjackingProtection=false -WebUI\HostHeaderValidation=false -```` - -## 关于群晖 - -群晖用户请使用你当前的用户SSH进系统,输入 ``id 你的用户id`` 获取到你的UID和GID并输入进去 - -![rNyFsw](https://cdn.jsdelivr.net/gh/SuperNG6/pic@master/uPic/rNyFsw.jpg) - -### 权限管理设置 - -对你的``docker配置文件夹的根目录``进行如图操作,``你的下载文件夹的根目录``进行相似操作,去掉``管理``这个权限,只给``写入``, -``读取``权限 -![HEmuK1](https://cdn.jsdelivr.net/gh/SuperNG6/pic@master/uPic/HEmuK1.jpg) - -### docker命令行设置: - -1. 创建qbittorrent容器 - -```` -docker create \ - --name=qbittorrentee \ - -e WEBUIPORT=8080 \ - -e PUID=1026 \ - -e PGID=100 \ - -e TZ=Asia/Shanghai \ - -e ENABLE_DOWNLOADS_PERM_FIX=true \ - -p 6881:6881 \ - -p 6881:6881/udp \ - -p 8080:8080 \ - -v /配置文件位置:/config \ - -v /下载位置:/downloads \ - --restart unless-stopped \ - superng6/qbittorrentee:latest -```` - -### docker-compose - -```` -version: "3" -services: - qbittorrentee: - image: superng6/qbittorrentee - container_name: qbittorrentee - environment: - - PUID=1026 - - PGID=100 - - TZ=Asia/Shanghai - - WEBUIPORT=8080 - - ENABLE_DOWNLOADS_PERM_FIX=true - volumes: - - ./qbittorrentee/config:/config - - ./qbittorrentee/downloads:/downloads - ports: - - 6881:6881 - - 6881:6881/udp - - 8080:8080 - restart: unless-stopped -```` - -### 变量: - -| 参数 | 说明 | -|-------------------------------------|:-----------------------------------------------------------------------------------------| -| `--name=qbittorrentee` | 容器名 | -| `-p 8080:8080` | web访问端口 [IP:8080](IP:8080);(默认用户名:admin;默认密码为随机生成,首次启动容器请查看日志);此端口需与容器端口和环境变量保持一致,否则无法访问 | -| `-p 6881:6881` | BT下载监听端口 | -| `-p 6881:6881/udp` | BT下载DHT监听端口 -| `-v /配置文件位置:/config` | qBittorrent配置文件位置 | -| `-v /下载位置:/downloads` | qBittorrent下载位置 | -| `-e WEBUIPORT=8080` | web访问端口环境变量 | -| `-e ENABLE_DOWNLOADS_PERM_FIX=true` | /downloads文件夹权限修复 | -| `-e TZ=Asia/Shanghai` | 系统时区设置,默认为Asia/Shanghai | - -### 群晖docker设置: - -1. 卷 - -| 参数 | 说明 | -|---------------------|:------------------| -| `本地文件夹1:/downloads` | qBittorrent下载位置 | -| `本地文件夹2:/config` | qBittorrent配置文件位置 | - -2. 端口 - -| 参数 | 说明 | -|------------------|:-----------------------------------------------------------------------------------| -| `本地端口1:6881` | BT下载监听端口 | -| `本地端口2:6881/udp` | BT下载DHT监听端口 | -| `本地端口3:8080` | web访问端口 [IP:8080](IP:8080);(默认用户名:admin;默认密码:adminadmin);此端口需与容器端口和环境变量保持一致,否则无法访问 | - -3. 环境变量: - -| 参数 | 说明 | -|-------------------------------------|:-------------------------------| -| `TZ=Asia/Shanghai` | 系统时区设置,默认为Asia/Shanghai | -| `WEBUIPORT=8080` | web访问端口环境变量 | -| `-e ENABLE_DOWNLOADS_PERM_FIX=true` | /downloads文件夹权限修复,默认开启,false关闭 | - -### 搜索: - -#### 开启:视图-搜索引擎: - -##### 说明: - -1. 自带 [http://plugins.qbittorrent.org/](http://plugins.qbittorrent.org/) 部分搜索插件 -2. 全新安装默认只开启官方自带部分和一个中文搜索插件。其它可到 视图-搜索引擎-界面右侧搜索-搜索插件-启动栏(双击)开启 -3. 一些搜索插件网站需过墙才能用 -4. jackett搜索插件需配置jackett.json(位置config/qBittorrent/data/nova3/engines) - ,插件需配合jackett服务的api_key。可自行搭建docker版jackett(例如linuxserver/jackett)。 diff --git a/qBittorrent-ee/data.yml b/qBittorrent-ee/data.yml deleted file mode 100644 index 42fa48492..000000000 --- a/qBittorrent-ee/data.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: qBittorrent-ee -tags: - - 工具 -title: qBittorrent增强版,防吸血 -description: qBittorrent enhanced version, anti-blood*ing -additionalProperties: - key: qBittorrent-ee - name: qBittorrent-ee - tags: - - Tool - shortDescZh: qBittorrent增强版,防吸血 - shortDescEn: qBittorrent enhanced version, anti-blood*ing - type: tool - crossVersionUpdate: true - limit: 0 - recommend: 0 - website: https://github.com/SuperNG6/Docker-qBittorrent-Enhanced-Edition - github: https://github.com/SuperNG6/Docker-qBittorrent-Enhanced-Edition - document: https://github.com/SuperNG6/Docker-qBittorrent-Enhanced-Edition diff --git a/qBittorrent-ee/latest/data.yml b/qBittorrent-ee/latest/data.yml deleted file mode 100644 index aed19682c..000000000 --- a/qBittorrent-ee/latest/data.yml +++ /dev/null @@ -1,20 +0,0 @@ -additionalProperties: - formFields: - - default: 40118 - edit: true - envKey: PANEL_APP_PORT_HTTP - labelEn: WebUI Port - labelZh: 网页端口 - required: true - rule: paramPort - type: number - - - default: 40119 - edit: true - envKey: PANEL_APP_PORT_PEER - labelEn: Peer Port - labelZh: BT端口 - required: true - rule: paramPort - type: number - diff --git a/qBittorrent-ee/latest/docker-compose.yml b/qBittorrent-ee/latest/docker-compose.yml deleted file mode 100644 index 83ee5c05d..000000000 --- a/qBittorrent-ee/latest/docker-compose.yml +++ /dev/null @@ -1,26 +0,0 @@ -networks: - 1panel-network: - external: true - -services: - qbittorrent: - container_name: ${CONTAINER_NAME} - environment: - - PUID=1000 - - PGID=1000 - - TZ=Asia/Shanghai - - WEBUIPORT=${PANEL_APP_PORT_HTTP} - - ENABLE_DOWNLOADS_PERM_FIX=true - image: superng6/qbittorrentee:latest - labels: - createdBy: "Apps" - networks: - - 1panel-network - ports: - - ${PANEL_APP_PORT_PEER}:6881 - - ${PANEL_APP_PORT_PEER}:6881/udp - - ${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_HTTP} - restart: always - volumes: - - ./data/config:/config - - ./data/downloads:/downloads diff --git a/qBittorrent-ee/logo.png b/qBittorrent-ee/logo.png deleted file mode 100644 index 8d9d88edd3e78fb87a4f6e2b6a8fccb31225a19c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5426 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