本文軟件由網友
ルリデ
推薦;
上周,人人影視創始人宣布將人人影視二十年字幕數據開源分享
目前提供了兩種使用方式:
-
“在線應用”
:意味著需要有互聯網才可以使用。官方提供了網站: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
,并獲取到安裝需要的 token
和 chatId
網上有很多教程,可以自己搜,也可以看后面的參考文檔
如果這一步搞不定,不建議往下看,因為沒有正確的 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
關于環境變量的簡單說明
可變 | 值 |
---|---|
TOKEN | Telegram Bot 的 token |
BOT_NAME | Telegram Bot 的名稱 |
MAINTAINER | 維護者的 Telegram UserID |
USERNAME | 人人影視的有效的用戶名,用于登錄后臺,建議改成自己的 |
PASSWORD | 人人影視的有效的密碼,用于登錄后臺,建議改成自己的 |
REDIS | redis 的地址,不要改 |
MONGO | mongodb 的地址,不要改 |
根據 https://github.com/tgbot-collection/YYeTsBot/blob/master/yyetsbot/config.py 猜測并添加環境變量
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
中設置的USERNAME
和PASSWORD
的值登錄
登錄成功后的主界面
如果你覺得自己欠人人影視一個會員,現在有機會了
功能可以自己探索一下
舊版的界面
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