Docker方式安装人人影视离线完整安装包

server/2024/12/17 3:36:56/

本文软件由网友 ルリデ 推荐;

上周,人人影视创始人宣布将人人影视二十年字幕数据开源分享

目前提供了两种使用方式:

  • “在线应用” :意味着需要有互联网才可以使用。官方提供了网站:https://yyets.click

  • “离线使用” :意味着可以断网使用,但是不会自动更新资源,需要手动更新数据库

如果你是 Linux/macOS/Windows 平台,建议用官方的一键安装脚本安装,具体可以参考文档:https://github.com/tgbot-collection/YYeTsBot/blob/master/DEVELOPMENT.md#一键脚本

如果你想通过 Docker 部署,可以跟随老苏一起折腾。本文只讨论 docker-compose 安装方式。

官方的 Docker部署文档语焉不详,而且也存在错误,可能是因为时间仓促吧。老苏作为一名非程序员的小白,只能通过代码来查问题,个中辛苦可想而知 😂

准备

创建 Bot

开源的离线包里包含了人人影视机器人和网站,这个机器人指的是 Telegram Bot

所以你需要有一个 tg 账号并且注册好 bot,并获取到安装需要的 tokenchatId

网上有很多教程,可以自己搜,也可以看后面的参考文档

如果这一步搞不定,不建议往下看,因为没有正确的 token,容器会无限制的处于重启状态

下载数据库

下载地址:https://yyets.click/database

只要下载 mongo 的库文件就行,接下来就可以进入安装环节了

安装

群晖上以 Docker 方式安装。

创建目录

首先要把目录建好,方便往里面丢文件,非群晖的可以参考

# 新建文件夹 yyets 和子目录
mkdir -p /volume1/docker/yyets/{subtitle_data,meilisearch_data,mongo_data,mysql_data}# 进入 yyets 目录
cd /volume1/docker/yyets

yyets.env.txt

yyets.env.txt 源自于官方另一个库中的 yyets.env

源文件地址:https://github.com/tgbot-collection/BotsRunner/blob/master/env/yyets.env

部署文档中写的是 MONGODB,但是会导致网页无法登录,查看了 config.py 的源码,才发现应该是 MONGO

将下面的内容保存为 yyets.env.txt,并放入 yyets 根目录中

TOKEN=
USERNAME="laosu"
PASSWORD="123456"
MAINTAINER=
BOT_NAME=""
REDIS=redis
MONGO=mongo

关于环境变量的简单说明

可变
TOKENTelegram Bottoken
BOT_NAMETelegram Bot 的名称
MAINTAINER维护者的 Telegram UserID
USERNAME人人影视的有效的用户名,用于登录后台,建议改成自己的
PASSWORD人人影视的有效的密码,用于登录后台,建议改成自己的
REDISredis 的地址,不要改
MONGOmongodb 的地址,不要改

根据 https://github.com/tgbot-collection/YYeTsBot/blob/master/yyetsbot/config.py 猜测并添加环境变量

dockercomposeyml_91">docker-compose.yml

docker-compose.yml 基于官方的做了微调

源文件地址:https://github.com/tgbot-collection/YYeTsBot/blob/master/docker-compose.yml

将下面的内容保存为 docker-compose.yml,并放入 yyets 根目录中

version: '3.1'services:redis:image: redis:7-alpinecontainer_name: yyets-redisrestart: alwayslogging:driver: nonemongo:image: mongo:6container_name: yyets-mongorestart: alwaysvolumes:- ./mongo_data:/data/dbcommand: --quietlogging:driver: none# ports:#   - "27017:27017"meili:image: getmeili/meilisearch:v1.0.2container_name: yyets-meilisearchrestart: alwaysenvironment:- MEILI_HTTP_PAYLOAD_SIZE_LIMIT=1073741824 #1GiBvolumes:- ./meilisearch_data:/meili_datamysql:image: ubuntu/mysql:8.0-22.04_betacontainer_name: yyets-mysqlrestart: unless-stoppedvolumes:  - ./mysql_data:/var/lib/mysqlenvironment:MYSQL_ROOT_PASSWORD: 'root'logging:driver: nonecommand: "--skip-log-bin --default-authentication-plugin=mysql_native_password"bot:image: bennythink/yyetsbotcontainer_name: yyets-botdepends_on:- redis- mongorestart: alwaysenv_file:- yyets.env.txtweb:image: bennythink/yyetsbotcontainer_name: yyets-webrestart: alwaysenv_file:- yyets.env.txtdepends_on:- mongo- redis- mysqlworking_dir: /YYeTsBot/yyetsweb/volumes:- ./subtitle_data:/YYeTsBot/yyetsweb/subtitle_datacommand: [ "python3","server.py","-h=0.0.0.0" ]ports:- "8877:8888"

yyets_mongo.gz

将我们在准备环境下载的 mongo 数据库文件 yyets_mongo.gz 也放入 yyets 根目录

一键启动

现在依次执行下面的命令

# 启动数据库
docker-compose up -d mongo# 数据库文件拷入容器
docker cp yyets_mongo.gz yyets-mongo:/tmp# 导入数据库
docker exec yyets-mongo mongorestore --gzip --archive=/tmp/yyets_mongo.gz --nsFrom "share.*" --nsTo "zimuzu.*"# 删除数据库文件
docker exec yyets-mongo rm /tmp/yyets_mongo.gz# 开启服务
docker-compose up -d

不出意外的话,应该会有 6 个容器正常运行

运行

网页

在浏览器中输入 http://群晖IP:8877 就能看到主界面

右上角的错误提示可以忽略

点右上角的 LOGIN

用我们前面的 yyets.env.txt 中设置的 USERNAMEPASSWORD 的值登录

登录成功后的主界面

如果你觉得自己欠人人影视一个会员,现在有机会了

功能可以自己探索一下

旧版的界面

Bot

如果设置没问题的话,会收到 HTTP API 的消息

想查什么直接输入就可以

选择一条记录,会返回它的链接,点链接可以直接打开页面

像这种没有返回的查询记录的,一般都是资源不足导致的 mongo 超时,有时候放一段时间也会,重启一下容器就可以了

# 重启容器
docker-compose restart

说明

老苏知道的,都已经写在文档中了。如果你搭建时遇到问题,建议多看几遍。

参考文档

tgbot-collection/YYeTsBot: 🎬 人人影视 机器人和网站,包含人人影视全部资源以及众多网友的网盘分享
地址:https://github.com/tgbot-collection/YYeTsBot

BennyThink/WebsiteRunner: Website Runner
地址:https://github.com/BennyThink/WebsiteRunner

Telegram 创建 bot 获取 token 和 chatId 以及发送消息简明教程
地址:https://www.boyy.org/notebook/mark/141118.html


http://www.ppmy.cn/server/150797.html

相关文章

SparkSQL多个count distinct 执行效率优化

写了一段非常简单的SQL。 数据量级一天大约5千万,拉取的30天的数据,按天 count(distinct)计算一系列指标。原本以为执行的效率会很快,结果发现运行了2h!所有探究其为什么运行慢,以及后续该如何规避这类问题。Spark使用…

xpath规则

路径表达式 谓语 用来查找某个特定的节点或者包含某个指定的值的节点 谓语被嵌在方括号中 选择未知节点 选取若干路径 使用“|”运算符 python中lxml使用 from lxml import etree import requests # 参数往往是一个html字符串 url "https://www.baidu.com/" hea…

Scala隐式转换的其他使用场景

1. 类型的隐式参数 隐式转换可以与类型参数一起使用,以便在需要类型参数时自动提供。例如: trait Show[T] {def show(value: T): String }def printValue[T](value: T)(implicit showInstance: Show[T]): Unit {val str showInstance.show(value)pri…

基于Dockerfile的博客管理系统的容器化部署

目录 任务描述 3 1.1课题的基本内容 3 1.2 项目整体技术架构 3 1.3主要技术栈: 3 1.4 模块划分 4 1.5 容器集群化部署的任务内容 5 1.6 项目容器化部署的目的 6总体结构 7 2.1 容器角色和功能 7 2.2 容器之间的关联关系 8 2.3 数据流动示例 8 3.详细设计 9 3.1 设计…

分布式 分布式事务 总结

前言 相关系列 《分布式 & 目录》《分布式 & 分布式事务 & 总结》《分布式 & 分布式事务 & 问题》 分布式事务 所谓分布式事务是指操作范围笼罩多个不同节点的事务。例如对于订单节点&库存节点而言,一次完整的交易需要同时调动两个节…

Redis 数据结构(二)—集合和有序集合

集合(Set)允许用户将多个各不相同的元素(文本或二进制数据)存储到集合中,以无序的方式存储元素。 有序集合(Sorted Set)同时具有“有序”和“集合”两种性质。每个元素由一个成员和分值组成。成…

react中使用echarts

在 React 中使用 ECharts,可以通过以下几个步骤来实现: 1. 安装依赖 首先,需要安装 echarts 和 echarts-for-react 这两个库,echarts-for-react 是一个 React 封装的 ECharts 组件库。 npm install echarts echarts-for-react2…

java 导出word锁定且部分内容解锁可编辑

使用 Apache POI 创建带编辑限制的 Word 文档 在日常工作中,我们可能需要生成一些带有编辑限制的 Word 文档,例如某些段落只能被查看,而其他段落可以自由编辑。本文介绍如何使用 Apache POI 创建这样的文档,并通过代码实现相应的…