本文记录使用docker安装Alist,配置文件修改,挂载百度网盘和又拍云等配置。
Alist的安装与配置
docker安装Alist
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist" xhofe/alist:latest
由于国内把dockerhub墙了,镜像文件无法下载,所以我保存一份v3.36.0版本镜像。alist.tar.gz | AList
# 导出镜像
docker save -o /alist.tar.gz xhofe/alist:latest
# 导入镜像
docker load -i alist.tar.gz
修改Alist管理员密码
# 随机生成一个密码
docker exec -it alist ./alist admin random
# 手动设置一个密码,`NEW_PASSWORD`是指你需要设置的密码
docker exec -it alist ./alist admin set NEW_PASSWORD
登录之后用户名也是可以修改了,为了安全建议可以修改一下。
修改配置文件
由于docker安装alist时做了持久化,所以只要进入宿主机/etc/alist目录下修改配置文件即可
vim /etc/alist/config.json
字段说明
site_url:你的网站 URL,比如 https://pan.nn.ci,URL 链接结尾请勿携带 /
database:数据库配置,默认是 sqlite3,也可以使用 mysql 或者 postgres。如果不使用 MySQL 或者 postgres,配置文件数据库选项不用修改
其他的配置没有特殊需求不用修改
{
  "force": false,
  "site_url": "https://alist.xmhweb.cn",
  "cdn": "",
  "jwt_secret": "LG6ICntG9Kt314iN",
  "token_expires_in": 48,
  "database": {
    "type": "mysql",
    "host": "114.114.114.114",
    "port": 3306,
    "user": "root",
    "password": "123456",
    "name": "Alist",
    "db_file": "data/data.db",
    "table_prefix": "x_",
    "ssl_mode": ""
  },
  "scheme": {
    "address": "0.0.0.0",
    "http_port": 5244,
    "https_port": -1,
    "force_https": false,
    "cert_file": "",
    "key_file": "",
    "unix_file": "",
    "unix_file_perm": ""
  },
  "temp_dir": "data/temp",
  "bleve_dir": "data/bleve",
  "dist_dir": "",
  "log": {
    "enable": true,
    "name": "data/log/log.log",
    "max_size": 50,
    "max_backups": 30,
    "max_age": 28,
    "compress": false
  },
  "delayed_start": 0,
  "max_connections": 0,
  "tls_insecure_skip_verify": true,
}
建立mysql数据库
如果配置文件中添加了mysql数据库,则需要创建一个数据库,不然会报错
mysql -uroot -p
create database Alist;
quit
配置文件修改后都需要重启 AList 才会生效。
docker restart alist
登录
通过IP+端口进行访问,如:10.10.10.10:5244,账号:admin,密码是你修改的密码。
反向代理设置
如果你有一个云服务器,用IP+端口访问太难记了,可以用二级域名进行访问,可以在 Nginx或Apache的配置文件中添加以下代码块来实现反向代理:
①打开Nginx的配置文件,通常位于/etc/nginx/nginx.conf或/etc/nginx/conf.d/default.conf。
server {
    listen 80;
    server_name alist.xmhweb.cn;
    location / {
        # 加了一个判断,只允许二级域名alist.xmhweb.cn访问,因为我配置过程中发现主域名也可以访问,没找到原因
        if ($host != 'alist.xmhweb.cn') {
            return 403;
        }
        proxy_pass http://10.10.10.10:5244;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        # 可根据需要设置其他代理相关的头部信息
    }
}
解释:
listen 80;指定监听的端口号。server_name alist.xmhweb.cn;指定要代理的域名或 IP 地址。location /定义了匹配的 URL 路径,这里使用了/,表示匹配所有请求。proxy_pass http://10.10.10.10:5244;指定要代理的目标地址,这里为10.10.10.10:5244。proxy_set_header用于设置代理请求的头部信息,这里设置了Host和X-Real-IP头部。
②打开Apache的配置文件,通常位于/etc/httpd/conf/httpd.conf或/etc/apache2/sites-available/000-default.conf。
<VirtualHost *:80>
  ServerName alist.xmhweb.cn
  ProxyPass / http://10.10.10.10:5244/
  ProxyPassReverse / http://10.10.10.10:5244/
</VirtualHost>
设置完之后记得重启服务sudo systemctl restart apache2或sudo systemctl reload nginx。
如果以上方法行不通,还是用官方的方法吧反向代理 | AList文档 (nn.ci)
我用的宝塔,所以直接按文档操作。
挂载百度网盘
- 挂载路径,随意设置:/BaiduDisk
 - Web代理:开启
 - WebDAV策略:本地代理
 - 【刷新令牌、客户端ID、客户端密钥、自定义破解ua】通过官方文档中的链接获取点击这里
 - 根文件目录:填写你要挂载百度网盘中的哪个文件夹,如:/Alist
 
如果不设置第2点和第3点的话,当文件超过30M左右会无法下载
挂载又拍云网盘
- 挂载路径,随意设置:/UPYun
 - Web代理:开启
 - WebDAV策略:本地代理
 - 存储桶指:又拍云的服务名称
 - Endpoint:加速域名,请自行添加
http://或https://协议头 - 操作员名称,密码:在又拍云中对操作员进行授权,操作员密码不是AccessKey,也不是SecretAccessKey,需要在账户管理中重新生成密码。
 - 根文件目录:填写你要挂载又拍云中的哪个文件夹,如:/,表示根目录
 
如果不设置第2点和第3点的话,当文件超过50M左右会无法下载
Alist网盘挂载为本地驱动盘
使用RaiDrive工具将Alist网盘挂载在电脑本地,如下图所示,可实现本地上传、查看

首先下载RaiDrive工具:RaiDrive官网,安装好进行配置即可。

服务类型:NAS→WebDAV
地址:Alist网盘地址+端口,路径必须加上:/dav
账号:Alist网盘账户和密码
相关链接
docker安装Alist:https://alist.nn.ci/zh/guide/install/docker.html
配置文件设置:https://alist.nn.ci/zh/config/configuration.html

			







评论