如何安装MR(Movie Robot)

需要准备docker,域名,公网IP一枚frp

关闭防火墙或者开启对应的端口(ufw、iptables、宝塔安全、服务商防火墙)

通过docker安装MR

  1. Windows
1
2
3
4
5
6
docker run -itd --name=mr --restart always \
-p 1329:1329 \
-v D:/MR/movie-robot:/data \
-v D:/MR/video:/video \
--env 'LICENSE_KEY=<KEY> \
yipengfei/movie-robot:latest
  1. Linux
1
2
3
4
5
6
docker run -itd --name=mr --restart always --network host \
-p 1329:1329 \
-v /volume3/docker/movie-robot:/data \
-v /volume1/video:/video \
--env 'LICENSE_KEY=<KEY>' \
yipengfei/movie-robot:latest

docker-compose.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: '3.3'
services:
movie-robot:
container_name: 'mr'
image: 'yipengfei/movie-robot:latest'
restart: 'unless-stopped'
network_mode: 'host'
ports:
- '1329:1329'
volumes:
- '/volume3/docker/movie-robot:/data'
- '/volume1/video:/video'
environment:
- 'LICENSE_KEY=<KEY>'

安装过后打开IP:1329则进入MR的网页管理界面,点击站点管理会发现无站点数据

https://github.com/zkl2333/MR-Extension

或者下载网友提供的sites数据:

https://github.com/lovebeefcat/movie-bot-conf

https://github.com/htnanako/movie-robot-public/tree/main/app/sites

替换为你的/volume/docker/movie-robot下的sites。

按照要求填入数据后即可展现出你的站点数据。

在应用设置里面配置媒体服务器、下载工具、媒体数据、推送通道、下载设置等配置。

注:豆瓣cookies需要先登录后然后打开 https://m.douban.com/movie/ 再获取cookies。

如何配置企业微信推送

  1. 以个人身份注册企业微信

    https://open.work.weixin.qq.com/wwopen/manual/detail?t=register

  2. 获取企业ID

    https://work.weixin.qq.com/wework_admin/frame#profile

    企业ID -> 企业微信CorpID

  3. 创建一个应用

    https://work.weixin.qq.com/wework_admin/frame#app

  4. 获取应用信息

    点击刚才创建的应用,将以下值填写到MR的对应位置上。

    AgentId -> 企业应用的id,整型。企业内部开发,可在应用的设置页面查看

    Secret -> 企业微信corpsecret

  5. 扫码添加到微信

    https://work.weixin.qq.com/wework_admin/frame#profile/wxPlugin

  6. 推送api则填自己服务器反代的 https://qyapi.weixin.qq.com

这样的话点击保存再点击推送,手机微信上就能接收到推送的测试信息.,但是这只是MR向我们发消息,我们向MR发消息需要MR的公网地址和可信IP。

如何反代

  1. 打开 https://work.weixin.qq.com/wework_admin/frame#apps

    点击刚才我们创建的应用,划到最下面可以看到

开发者接口

我们需要先配置第一个,再配置第二个。

第一个网页授权及JS-SDK可能不需要配置,请自行尝试

  1. 打开域名对应的控制台,将域名解析到你对应的固定公网IP

  2. 创建一个网站

    有宝塔了直接使用宝塔创建就行了

    没有宝塔使用nginx就行了

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    server
    {
    listen 80;
    #listen 443 ssl;
    server_name qyapi.xxx.com; #多个域名中间空格隔开
    #ssl_certificate crt/pem;
    #ssl_certificate_key key;

    # location / {
    # alias /home/qiyeapi/;
    # }

    location / {
    proxy_pass https://qyapi.weixin.qq.com;
    proxy_ssl_server_name on;
    }

    access_log /www/wwwlogs/qyapi.log;
    error_log /www/wwwlogs/qyapi_error.log;
    }
  3. 将需要验证的文件放在/home/qiyeapi/下面,然后重新加载nginx,nginx -s reload

  4. 点击验证成功后,将服务器IP填到第二项中。

使用frp将MR的地址变成公网地址

frp分为服务端和客户端,frps为服务端,frpc为客户端

项目地址:https://github.com/fatedier/frp

服务端

在服务器上安装服务端,下载对应架构的压缩包,解压缩后只需关注frps,和frps.ini

frps.ini

1
2
3
[common]
bind_port = 7000
token = password2023

然后

1
2
3
/root/frp/frps -c /root/frp/frps.ini
/usr/local/bin/frps -c /etc/frp/frps.ini
/usr/local/bin/frpc -c /etc/frp/frpc.ini

使用systemd后台长期运行

1
2
3
4
5
6
安装systemd
# yum
yum install systemd
# apt
apt install systemd

1
2
# 创建并编辑 frps.service
vim /etc/systemd/system/frps.service

写入一下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[Unit]
# 服务名称,可自定义
Description = Frp Server Service
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
Restart=on-failure
RestartSec=10s
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart =/usr/local/bin/frps -c /etc/frp/frps.ini
LimitNOFILE=1048576

[Install]
WantedBy = multi-user.target

frpc

1
2
# 创建并编辑 frpc.service
vim /etc/systemd/system/frpc.service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[Unit]
Description=Frp Client Service
After=network.target

[Service]
Type=simple
#DynamicUser=yes
Restart=on-failure
RestartSec=5s
ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.ini
ExecReload=/usr/local/bin/frpc reload -c /etc/frp/frpc.ini
LimitNOFILE=1048576

[Install]
WantedBy=multi-user.target

使用systemctl命令管理frps

1
2
3
4
5
6
7
8
9
10
11
12
# 更新配置
systemctl daemon-reload
# 启动frp
systemctl start frps
# 停止frp
systemctl stop frps
# 重启frp
systemctl restart frps
# 查看frp状态
systemctl status frps
# frps开机自启
systemctl enable frps

客户端

可以使用docker也可以使用二进制文件,主要是取决于系统

frpc.ini

1
2
3
4
5
6
7
8
9
10
[common]
server_addr = x.x.x.x
server_port = 7000
token = password2023

[mr]
type = tcp
local_ip = 192.168.1.101
local_port = 1329
remote_port = 6016

这样就能通过公网IP+6016访问MR了。

配置API接收消息

image-20230107183621787 api接收消息

URl则填 http://公网IP:6016/api/qywx/receive (注意最后面不带/)

回到MR的企业微信配置界面,填入对应的Token和EncodingAESKey,推送api地址则填刚才反代的地址,保存即可。

image-20230107183945751

点击保存即可

image-20230107184342769

在企业微信的应用中发送”绑定用户”后,在用户管理那里设置微信和豆瓣。

image-20230107204245481

参考:

https://yee329.notion.site/Movie-Robot-Wiki-9abef8c648c840fca47a0bf308957f85

https://gofrp.org/


如何安装MR(Movie Robot)
https://shyi.org/posts/29707/
作者
Shyi
发布于
2023年1月7日
更新于
2024年9月7日
许可协议