随着手里注册的网盘越来越多,找文件成了头疼事。有时候为了找一份文档,得在三四个网盘客户端之间切换搜索。

AList 是一个开源的网盘聚合程序,它支持将百度、夸克、阿里云盘、天翼云、OneDrive、Google Drive、WebDAV 等几十种存储协议整合到一个统一的 Web 网页中,支持文件全盘搜索、在线预览视频/图片/代码,并提供标准 WebDAV 接口供外部播放器和电脑挂载。

这篇笔记整理了用 Docker Compose 部署 AList 的极简步骤、Nginx 反代配置以及如何添加自己的第一个网盘。


什么是网盘聚合与 AList 的作用

很多新手以为搭建 AList 是要租一个几十 TB 的大服务器,其实完全不是!

┌─────────────────────────────────────────────────────────────┐
│ 🔑 核心真相:AList 本身不存任何文件!                         │
│    - 它是一个极度轻量的「超级路由器 / 万能聚合总指挥」;       │
│    - 无论你有 10TB 阿里、2TB 百度还是 5TB Google Drive;       │
│    - 全部通过 API 统一汇聚到同一个网页仪表盘中;             │
│    - 只需要 100MB 内存的小 VPS,就能撬动全网上百 TB 的云端资源!│
└─────────────────────────────────────────────────────────────┘

准备工作

  • [ ] 一台云服务器(VPS):已安装官方 Docker 与 Compose 引擎;
  • [ ] 一个已解析的域名:例如将 pan.example.com 的 A 记录指向你的服务器 IP;
  • [ ] 至少一个网盘账号:阿里云盘、夸克网盘、百度网盘、OneDrive 或 WebDAV 服务。

编写 AList 的 Docker Compose 配置

我们将数据与配置牢牢挂载在宿主机,防止容器升级时配置丢失。

💻 【你本地的电脑】 打开终端连入服务器,进入 服务器端:。

整段复制并执行以下自包含防呆部署脚本(绝不需要手动碰 vim):

# 1. 创建 AList 专属数据目录
mkdir -p /opt/alist && cd /opt/alist

# 2. 写入干净纯净的 Compose 编排清单
cat << 'EOF' > /opt/my-alist/docker-compose.yaml
version: '3.3'
services:
  alist:
    image: 'xhofe/alist:latest'
    container_name: alist
    restart: unless-stopped
    volumes:
      # 数据持久化目录(存储元数据与配置)
      - /opt/alist/data:/opt/alist/data
    ports:
      # 绑定本地 5244 端口,准备供 Nginx 反向代理接入
      - '127.0.0.1:5244:5244'
    environment:
      - PUID=0
      - PGID=0
      - UMASK=022
EOF

# 兼容软链接
mkdir -p /opt/my-alist
ln -sf /opt/my-alist/docker-compose.yaml /opt/alist/docker-compose.yaml 2>/dev/null || true

# 3. 检查编排文件
ls -lh /opt/alist/docker-compose.yaml
  • ✅ 成功标志:终端显示 /opt/alist/docker-compose.yaml 已成功生成。
  • 💡 安全设计:端口绑定为 127.0.0.1:5244,仅内网可通,外部流量稍后由 Nginx 统一加密代理,黑客无法通过非标端口直接撞库。

启动服务并获取管理员初始密码

启动容器只需要敲一个命令:

服务器端: 执行一键后台启动:

cd /opt/alist
docker compose up -d

启动后,AList 官方安全机制会在首次运行时自动随机生成一个强密码。

我们直接运行官方命令一秒强制重置为一个好记的强密码:

# 将末尾的 MySuperPassword2026 换成你自己的强密码!
docker exec -it alist ./alist admin set MySuperPassword2026
  • ✅ 成功标志:终端屏幕直接打印出:
    text
    Successfully update password:
    username: admin
    password: 你的新密码

⚠️ 关键动作:立刻把用户名 admin 和刚才设定的密码保存在你本地的便签中!


配置 Nginx 反向代理与大文件上传优化

AList 涉及到 GB 级的大文件下载与流媒体串流传输,Nginx 反代配置必须关闭缓冲区限制,并放行大文件!

服务器端: 先定义你的域名变量:

MY_DOMAIN="pan.example.com"

接着,整段执行专门针对 AList 调优的专用网关脚本:

cat << EOF > /etc/nginx/sites-available/${MY_DOMAIN}.conf
server {
    listen 80;
    listen [::]:80;
    server_name ${MY_DOMAIN};

    # 关键调优:放行极大文件上传(0 代表完全不限制文件体积)
    client_max_body_size 0;

    location / {
        proxy_pass http://127.0.0.1:5244;

        # 核心标头透传
        proxy_set_header Host \$host;
        proxy_set_header X-Real-IP \$remote_addr;
        proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto \$scheme;

        # 关键调优:关闭 proxy_buffering 缓冲区!
        # 防止大文件视频串流或下载时,Nginx 在本地磁盘堆积海量临时缓存
        proxy_buffering off;
        proxy_request_buffering off;

        # 超时时间调大,保证超大文件传输不断连
        proxy_read_timeout 600s;
        proxy_send_timeout 600s;
    }
}
EOF

# 激活配置并平滑重载
ln -sf /etc/nginx/sites-available/${MY_DOMAIN}.conf /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
  • ✅ 成功标志:终端打印出 test is successful,网关平滑生效!

登录后台并添加存储驱动

💻 【你本地的浏览器】 打开你的域名(例如 http://pan.example.com):

  1. 点击网页底部的 「管理」 按钮;
  2. 输入账号 admin 与刚才设置的密码,成功进入 AList 管理大盘;
  3. 点击左侧菜单 「存储」➔「添加」:
    * 驱动:选择你想挂载的网盘(例如:阿里云盘 OpenAPI、夸克网盘、百度网盘 或 本地存储);
    * 挂载路径:填在前端展示的文件夹名字(例如 /阿里云盘);
    * 网页 Web 代理 / 302 重定向:⚠️ 重点避坑!优先选择「302 重定向」(直链走网盘官方 CDN,不消耗你 VPS 一丁点流量!);
    * 按照界面右侧的官方提示,填入网盘的 Token 或扫码授权;
  4. 点击最下方的 「添加」!
  • ✅ 成功标志:存储列表中该网盘状态显示为绿色的 work,回到首页即可看到文件夹,点进去所有文件一览无余,双击视频秒级原画开播!

通过 WebDAV 协议挂载为本地磁盘

AList 原生自带强大的 WebDAV 服务器,你可以把聚合后的全网资源直接挂载进 Windows 的“此电脑”或 Mac 的 Finder 中,像操作本地 C 盘、D 盘一样拖拽文件:

  • WebDAV 地址:https://你的域名/dav/
  • 用户名 / 密码:你的 AList 管理员账号密码(或在后台单独创建子用户);
  • 在客户端中挂载:
  • 🖥️ Windows 用户:推荐使用免费神盾工具 RaiDrive,添加 WebDAV 驱动器,盘符选 Z:,直接在资源管理器里无缝拖拽!
  • 📱 电视盒子 / 手机影音:在 Infuse、Kodi 或 PotPlayer 里添加 WebDAV 资源库,海报墙全自动刮削,蓝光 4K 秒开看大片!

新手常见报错与排查

异常现场 真实根因 对应一秒救命招式
忘记管理员密码,进不去后台 随机密码未保存 服务器敲 docker exec -it alist ./alist admin set 新密码,秒级生效。
大文件下载速度极慢,把 VPS 带宽跑满 误把存储策略选成了“本地代理 (Proxy)” 进入存储设置,将 Web 代理方式切回 「302 重定向」,流量立刻直连网盘官方极速 CDN!
上传超过 100MB 文件报错或被掐断 套了 Cloudflare 免费版触发了 100MB 单文件限制 在 Cloudflare 控制台把网盘二级域名的代理小云朵切为灰云(仅 DNS 解析),即可突破体积限制。
阿里云盘或夸克提示 Token 过期 授权 Refresh Token 失效 重新获取最新 Token 粘贴进存储配置保存,AList 会自动恢复连接。