一、前言
本教程适用性:只针对境外服务器搭建,国内服务器、家里云或者家庭NAS,可能不具参考意义。本教程linux选择的是debian,其他linux平台的命令可以通过这个网站查看:https://linux.xxxh.de;并且本教程不涉及网盘挂载等便宜易翻车的方案;
由于博主非计算机相关专业的,操作大部分是基于可视面板实现的,都是docker安装,利好小白学习,大佬请回避;
本文为本人原创内容,转载请联系并说明出处
二、准备工作
①一台配置足够的服务器(必须)
我自己用的hetzner的独服,配置够大,便宜的机器一个月几百块,也有上千的高配。
走我的hetzner的aff注册账号,可以白嫖20欧元,如果新注册没有走aff,可以联系客服发送aff链即可获得20欧元余额。注意:这家服务商注册账号需要真实信息与真实网络环境
https://hetzner.cloud/?ref=pzUgMGtp6xuJ
②一个合适的域名(可选)
③一个cloudflare账号:用于域名解析(可选)
④TGBotToken与TGapi、hash(必须)
TGapi、hash获取有些难度,但是本教程附有详细步骤
⑤PT站账号(可选)
三、安装1panel并扩充应用市场
①进入服务器终端,安装1panel
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
②补充应用市场
wget -P /opt/1panel/resource/apps/local https://github.com/okxlin/appstore/archive/refs/heads/localApps.zip
unzip -o -d /opt/1panel/resource/apps/local/ /opt/1panel/resource/apps/local/localApps.zip
cp -rf /opt/1panel/resource/apps/local/appstore-localApps/apps/* /opt/1panel/resource/apps/local/
rm -rf /opt/1panel/resource/apps/local/appstore-localApps
rm -rf /opt/1panel/resource/apps/local/localApps.zip
③在浏览器输入http://IP:port访问面板
输入账号密码后,进入面板。左侧从上往下数,第二个应用商店
,第三个网站
,第五个数据库
,第六个容器
,第七个文件
。在本教程中,会使用到这几个功能页面,提前熟悉并了解
四、配置emby本体
①安装emby
注意:没有特殊要求就一切默认即可,记得一定要允许端口外部访问
②进入容器编辑把本机目录挂载到指定目录,比如:/home/emby
③获取API安装playback reporting
在浏览器输入http://IP:port访问,完成一系列设置后并创建好管理员账号。
进入管理后台,获取API,复制出来备用
并在插件市场中下载安装playback reporting,如图所示
④分类整理影片,设置分类封面
可以手动,也可以借助MoviePilot自动整理,下文讲解。封面图片URL:
在媒体库处编辑,粘贴上文的封面URL
效果如图
五、安装数据库
①安装MySQL
应用商店找到MySQL安装,一切默认即可,记得打开允许端口外部访问
②创建数据库
进入面板左侧第五个:数据库。复制刚刚创建的数据库用户名密码,备用
复制IP地址跟端口,备用
六、获取tgbottoken
①创建bot并获取Tokem
去https://t.me/BotFather输入/newbot,起一个合适的名字与用户名,复制如图所示Token,备用
重要:bot为群管理员,拥有删除消息、置顶消息,踢出成员权限
②获取TG用户的API与hash
1. 登录Telegram应用管理页面https://my.telegram.org/,输入TG的手机号码进行登录
2. 点击 "API development tools" 并填写表格。其中 "App title" 和 "Short name" 可以随意填写,"Platform" 选择你的开发平台,"Description" 是对你的应用的简短描述
3.点击创建应用提交表格后,如果成功你将获得一个 "App api_id" 和 "App api_hash"。这就是你的API和Hash,复制备用。如图
4.如果申请失败:账号的国家和ip节点最好在同一个地区,例如:香港的tg账号用香港的节点申请api,据说家宽IP申请成功率更高
注意:一个账号只能申请一个api
七、集成TGBot实现自动化管理
首先感谢开源作者的贡献,使用项目开源地址:https://github.com/berry8838/Sakura_embyboss
1.进入服务器终端,拉取代码
拉取的源码文件路径默认在/root/Sakura_embyboss
sudo apt install python3-pip
git clone https://github.com/berry8838/Sakura_embyboss.git && cd Sakura_embyboss && chmod +x main.py
如果服务器没有git,安装:
# 检查是否已经安装
git --version
# 安装
apt-get install git
2.编辑config.json
进入默认路径/root,进来后就会看到拉取到的源码文件:Sakura_embyboss。点进去找到config.json这个文件
或者在如图位置直接输入:/root/Sakura_embyboss
,可以实现同样的效果
必填变量的配置填写指南 | ||
变量名称 | 填写描述 | |
Telegram Bot | bot_name | bot的username,比如我的机器人@emby_ikun_bot,就填emby_ikun_bot |
bot_token | bot的API token ,在 @Botfather 创建bot时的Token,上文有讲述过 | |
owner_api | API,获取方法上文有讲述 | |
owner_hash | Hash,获取方法上文有讲述 | |
owner | 拥有者的TGid | |
group | 授权群组id,如我的IKUN群组是-1002366246494,未授权的群组拉bot会自动退出。不在群组的成员会提示先加入群组 | |
main_group | 群组的username, 形如 @su_yxfy 中的 su_yxfy或私密群组的邀请链接,如 https://t.me/+I1YBb-lW8k0xOGE0中的+I1YBb-lW8k0xOGE0 | |
chanel | 填写方式同 main_group,例如我的频道:Asukacute | |
bot_photo | 形如https://img.xxxh.de/1742561996081.png,bot发送消息时的配图,可以通过我的图床上传图片:https://img.xxxh.de | |
admins | 默认[ ] 为空,可以将想要赋予权限的tg用户id填进 | |
Emby | emby_api | emby的api_key,【Emby Service 管理】-> 【高级】->【API密钥】创建一个,上文有讲述 |
emby_url | 形如http://255.255.255.36:8096(纯ip)或者https://emby.xxxh.de(有反代) 最后不带斜杠,为发起请求emby的地址 | |
emby_line | 【服务器板块】展示给用户的emby地址和信息,仅支持telegram的MarkdownV2写法,
例如:n普通线路:https://emby.xxxh.den端口:443nn备用线路:http://157.180.0.157:8096nhttp://[2a01:4f9:3100:28ec::2]:8096,效果如图所示 |
|
Database
(Mysql) |
db_host | 数据库的ip255.255.255.36,端口默认3306 |
db_user | 数据库用户名,比如上文的emby | |
db_pwd | 数据库密码,上文的数据库密码 | |
db_name | 数据库名,上文截图的emby | |
db_port | 数据库端口,上文截图默认3306 |
选填变量的配置填写指南 | ||
类型 | 变量名称 | 填写描述 |
货币 | money | 功能货币的名称,例如我取的KUN币 |
open
注册,兑换开关 |
stat | 注册状态,默认 false true or false |
all_user | 注册人数限制,可在bot启动后进入admin设置,默认 1000 | |
timing | 定时注册计时参数,bot启动后开启定时注册有效,勿动,默认 0 | |
tem | 当前已注册用户计数,勿动,默认 0 | |
allow_code | 能否使用注册码续期,默认 true true or false |
|
checkin | 是否开启签到,默认 true true or false |
|
exchange | 是否开启花币月度自动续期,默认 true true or false |
|
exchange_cost | 续期的价格 每30天,默认 100 | |
whitelist | 是否开启兑换白名单,默认 true true or false |
|
whitelist_cost | 兑换白名单价格,默认 9999 | |
invite | 是否开启邀请功能,默认 false true or false |
|
invite_cost | 邀请码价格 每30天,默认 500 | |
leave_ban | 是否开启退群封禁,默认 true true or false |
|
uplays | 是否开启用户播放结算奖励,默认 true true or false |
|
Emby Media
媒体库控制 |
emby_block | ["媒体库名称"] 由用户能控制显示隐藏的媒体库,bot中也可设置 |
extra_emby_libs | ["媒体库名称"] 默认隐藏,不想对新用户显示的媒体库,用户无法控制显隐,管理通过命令/kk可指定开启 | |
ranks | logo | 日榜/周榜推送榜单图片中的LOGO文字,同时也是注册、续期码的前缀,请尽量保持中间没有空格,影响体验。默认SAKURA,例如我设置的是IKUN |
backdrop | 是否使用backdrop(即横版图)作为推送榜单的封面图 ,默认false | |
schedall
各种定时任务管理 |
dayrank | 默认true,定时发送媒体播放次数日榜,每日 18:30 |
weekrank | 默认true,定时发送媒体播放次数周榜,每周日 23:59 | |
dayplayrank | 默认false,定时发送用户观看时长日榜,每日 23:00 | |
weekplayrank | 默认false,定时发送用户观看时长周榜,每周日23:30 | |
check_ex到期保号 | 默认true,检测用户到期时间与当前utc时间大小,过期封禁,5天后未续期删号,每日 01:30 | |
low_activity活跃保号 | 默认false,检测用户最后一次活跃时间,间隔当前超过21天封禁,每日 08:30 | |
不开启保号 | 如都不开启上述两种保号 false,false,则无需保号 | |
backup_db | 默认false,自动定时备份数据库,每日 02:30 | |
backup_db
数据库备份详细设置 |
db_is_docker | 默认true,数据库是否为docker模式启动,ture or false |
db_docker_name | 默认 mysql,若docker模式启动的数据库,此数据库容器的名字 | |
db_backup_dir | 默认 ./backup数据库备份文件所保存的目录 | |
db_backup_maxcount | 默认7数据库备份文件保留的个数 | |
AntiChanel
反皮套白名单 |
w_anti_chanel_ids | 本机器人默认开启反频道(杀皮套人)功能,除匿名群管皮套,如需要允许其发言请将其id或username加入列表,例如把emby频道加入进去 |
MoviePilotService
点播功能 |
status | 默认false,是否开启求片程序 |
host | 默认null,形如:http://xxx.xxx.xxx.xxx:3001的moviepilot的api地址 | |
username | 默认null,登录的用户名 | |
password | 默认null,登录的密码 | |
access_token | 默认null,验证身份以后的token,会自动更新,勿动 | |
price | 默认1,按体积计算,每1G收取的KUN币 |
注意:MoviePilotService安装在下文有讲解。编辑配置文件后记得保存,并重启docker才会生效!
3.编辑docker-compose.yml
如图编辑,把无关代码行注释掉
,因为上文已经手动创建过数据库了
4.Bot,启动!
进入服务器终端,输入以下代码:
cd /root/Sakura_embyboss #进入源码目录
docker-compose up -d #一键docker启动
到现在可以尝试在embybot聊天框输入相关命令,进行测试有无回应
5.调试并检查embybot方法
如果发现bot无回应,可以去面板左边第六个容器,进去可以看到docker运行日志,进行重启或者删除等操作
八、配置mp和qbt
注意:如有手上没有mp支持的pt站可以不用看了
没有pt站的话去网盘下资源并上传
我可以发💊,留言邮箱跟预注册ID
本步骤内容无先后顺序,完全可以自行研究配置
1.安装MP
MP配置内容太多可以随便填填,因为可以进面板后台可视化配置。第一登陆要使用超级管理员密码,位置在:
/opt/1panel/apps/local/moviepilot/moviepilot/data/config/logs/moviepilot.log
将本机目录挂载至与emby媒体库相同路径,即上文的/home/emby
2.安装QB
第一次启动QB,默认密码在docker日志中查询。进入QB网页后,可以选择修改密码或者进行限速设置,种子的活跃数量限制等。第一件事设置成简体中文,一些功能很容易理解。此步骤主要是:要记录下QB的用户名跟密码还有IP:端口
将本机目录挂载至与emby媒体库相同路径,即上文的/home/emby
3.连接emby、QB与TGbot
参考截图自行配置即可
4.安装CookieCloud插件同步PT站点cookie
chrome插件:https://chromewebstore.google.com/detail/cookiecloud/ffjiejobkoibkjlhjnlgmcnnigeelbdl
如图设置后手动同步即可
5.系统健康检查
如图所示全部为绿色打勾,即为配置无误
6.MP插件市场
完整的插件仓库地址配置,复制粘贴进docker容器的环境变量中即可:
PLUGIN_MARKET=https://github.com/jxxghp/MoviePilot-Plugins/,https://github.com/thsrite/MoviePilot-Plugins/,https://github.com/honue/MoviePilot-Plugins/,https://github.com/InfinityPacer/MoviePilot-Plugins/,https://github.com/dandkong/MoviePilot-Plugins/,https://github.com/Aqr-K/MoviePilot-Plugins/,https://github.com/AnjoyLi/MoviePilot-Plugins/,https://github.com/WithdewHua/MoviePilot-Plugins/,https://github.com/HankunYu/MoviePilot-Plugins/,https://github.com/baozaodetudou/MoviePilot-Plugins/,https://github.com/almus2zhang/MoviePilot-Plugins/,https://github.com/Pixel-LH/MoviePilot-Plugins/,https://github.com/lightolly/MoviePilot-Plugins/,https://github.com/suraxiuxiu/MoviePilot-Plugins/,https://github.com/gxterry/MoviePilot-Plugins/,https://github.com/hotlcc/MoviePilot-Plugins-Third/,https://github.com/boeto/MoviePilot-Plugins/,https://github.com/xiangt920/MoviePilot-Plugins/,https://github.com/yubanmeiqin9048/MoviePilot-Plugins/,https://github.com/loongcheung/MoviePilot-Plugins/,https://github.com/xcehnz/MoviePilot-Plugins/,https://github.com/imaliang/MoviePilot-Plugins/,https://github.com/wikrin/MoviePilot-Plugins/,https://github.com/DDS-Derek/MoviePilot-Plugins/,https://github.com/KoWming/MoviePilot-Plugins
安装如图插件
复制PT站生成的RSS订阅链接
粘贴至此处
效果如图
8.bot推送效果
9.订阅优先级
SPECSUB & CNSUB & !BLU & BLURAY & H265 & !DOLBY & !REMUX & !UHD & 1080P > CNSUB & 4K & !BLU & BLURAY & H265 & !DOLBY & !REMUX & !UHD > SPECSUB & CNSUB & 4K & !BLU & !BLURAY & !UHD & !REMUX & WEBDL & !DOLBY > CNSUB & 4K & !BLU & !BLURAY & !UHD & !REMUX & WEBDL & !DOLBY > 4K & !BLU & !DOLBY > 4K & !BLU > SPECSUB & CNSUB & 1080P & BLURAY & !DOLBY & !BLU & !UHD & !REMUX > CNSUB & 1080P & !BLU & BLURAY & !DOLBY & !UHD & !REMUX > SPECSUB & CNSUB & 1080P & !BLU & !BLURAY & !UHD & !REMUX & WEBDL & !DOLBY > CNSUB & 1080P & !BLU & !BLURAY & !UHD & !REMUX & WEBDL & !DOLBY > 1080P & !BLU & !DOLBY > 1080P & !BLU > 720P & !BLU
10.自动整理媒体库目录
安装插件并自习配置
11.其他说明
实用的有自动刮削入库插件,热门订阅插件,媒体库自动刷新,emby弹幕下载等等等等
还有有很多功能由于字数篇幅过长,不予以展示了,自行研究开发
九、反代域名访问或者线路优化
没有域名的话这个步骤不是必须的
1.安装OpenResty
2.在Cloudflare修改A记录
3.下载证书
复制源证书与私钥备用,当然也有其他方法获取证书,我这里只讲述一种
4.上传证书
5.反代配置
6.其他说明
十、最后
以上操作步骤一定要确认保存,否则不会生效。线路优化操作与之类似,只是需要在优化线路的机器上进行反代操作即可,大家举一反三各自发挥吧!
长图文教程制作不易,构思梳理并呈现出来花费了两天时间,过程仓促,内容不精细略显粗糙。如有不足与错误请评论区留言交流,感谢您的耐心阅读与理解,您的支持就是我最大动力。如果喜欢我的作品与音乐服,可以动动您发财的小手为我们发电一波~