安装并使用alist播放视频

写在前头 alist-V3

使用alist挂载aliyun盘和ondrive等,能够获取到文件的直链,能够更方便地进行分享。

安装alist:

使用docker安装

1
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 -e TZ="Asia/Shanghai" --name="alist" xhofe/alist:latest

docker-compose.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
version: '3.3'
services:
alist:
container_name: 'alist'
image: 'xhofe/alist:latest'
restart: 'always'
volumes:
- '/home/<username>/alist3:/opt/alist/data'
ports:
- '127.0.0.1:5244:5244'
environment:
- 'PUID=0' # 请先chown -R 1000:1000 /home/<username>/alist3再设置为1000
- 'PGID=0'
- 'UMASK=022'
- 'TZ=Asia/Shanghai'

nginx反代:

服务器才需要nginx反代

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
server
{
listen 80;
server_name alist.demo.com;

location /
{
proxy_pass http://127.0.0.1:5244;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_redirect off;
client_max_body_size 200m;
}

#禁止爬虫,if语句必须放在server或者location范围内,不能放在http范围内。
if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot" ) {
return 403;
}

access_log /www/wwwlogs/alist.demo.com.log; #日志可以不写
error_log /www/wwwlogs/alist.demo.com.error.log;
}

添加站点:

添加阿里云盘open

此工具获取的刷新令牌仅可以用于 阿里云盘开放平台 存储挂载方式
AList 挂载时填写的 token 也应该是这个工具提供的,之前方式获取的不可以
暂不适用于其他,同时也仅限用于 Alist 使用
同一 IP 在 60 分钟内请求 10 次,会出现 TooManyRequests 🚫避免滥用,请勿滥用🚫
例如在 保存/编辑 的时候算一次请求,查看文件看视频下载不算。
上述的分钟和次数是动态的喔~

官方教程

需要先获取登录密码:

1
2
3
docker logs alist
# 或者
docker exec -it alist ./alist admin

aliyun获取refresh token

  1. 控制台输入下面代码,浏览器获取的token可能有局限性,未充分尝试

    1
    JSON.parse(localStorage.getItem('token')).refresh_token
  2. 使用移动端的token,官方推荐,扫描作者二维码可获得

点击跳转

浏览器输入http://ip:5244 账号admin,密码上面获取的。

  • 挂载路径就是打开你的alist网站出现的文件夹
  • 302重定向就是不消耗宿主机的流量
  • 根文件ID是地址栏folder后面的字符串https://www.aliyundrive.com/drive/folder/5fe01e1830601baf774e4827a9fb8fb2b5bf7940
  • 刷新令牌是上面获取的
  • 移除方式随便选择一个

打开视频能够正常播放

添加onedrive

官方教程

建议在无痕模式下进行

一、点击链接创建应用使用自己创建的应用

  • 点击new registration -> 选择Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)、下面选择web和输入 https://tool.nn.ci/onedrive/callback记下Application (client) ID.
  • 然后选择certificates & secrets,点击new client secretDescription随便填一下,Expires选择24个月,记录下Value(离开页面就不再显示).
  • 最后选择API permissions,点击Add a permission-> Microsoft Graph -> Delegated permissions搜索file,勾选Files.ReadWrite & Files.ReadWrite.All,点击add permission.
  • 将之前获取到的client idValue输入到这个链接后点击获取刷新令牌即可获取到token.

二、打开链接后点击获取刷新令牌,但是需要组织管理员批准

  • 登录管理员用户进行授权。

挂载本地文件

只需要映射对应的文件夹即可

例如:添加如下一行

1
-v /bigpan/data:/opt/alist/local \

选择本机存储根目录路径配置/opt/alist/local即可

webdav

默认用户admin就创建了webdav

  • webdav地址:http://ip:/5244/dav
  • 账户密码为你创建的。
  • 挂载本地可以参考这篇rclone挂载

播放视频

alist自带的网页播放器对于一些硬字幕视频支持挺好,但是不支持h.265等编码视频,ac3等编码音频。这个时候就需要使用播放软件进行弥补了。一些常用的安卓和Windows软件在此,ios和Mac建议使用vlc播放器。

使用软件播放需要获取到视频的直链(可以直接下载的地址)

获取直链:

  1. 右键你想要播放的视频,两者都可
  2. 在播放界面

获取播放列表的直链(potplayer用到):

  • 在视频列表界面点击

PC端

一、使用potplayer

  • 优点:可以将多集视频放入播放列表中
  • 缺点:如果暂停视频的话,还是会一直向本地(C盘)进行缓存,网速快的话前10分钟就能缓存完,对硬盘不友好。

使用方法:

  1. CTRL+U,然后将复制的直链粘贴进去回车即可。
  2. 右键-> 打开 -> 打开链接 ,粘贴回车

二、使用vlc

  • 优点:可以手动设置缓存多少秒
  • 缺点:不支持播放列表

使用方法:

  1. CTRL+N,粘贴回车
  2. 点击媒体->打开网络串流,粘贴回车

安卓

三个软件都在上方链接中,播放时直接点击对应按钮即可播放,MXPlayer需要点击MXPlayer Pro

一、使用nPlayer

  • 特点:付费、功能多

二、VLC

  • 特点:免费、无广告

三、MX Player

  • 特点:免费的有广告

安装并使用alist播放视频
https://shyi.org/posts/19117/
作者
shyi
发布于
2022年8月4日
更新于
2024年9月7日
许可协议