一、镜像选择(推荐)

  • aria2 本体p3terx/aria2-pro(优化版,自动更新 BT tracker、自动清理垃圾文件、全平台适配,稳定性拉满)

  • Web 面板 AriaNgp3terx/ariang(轻量独立容器,操作简洁,无需额外配置,直接对接aria2)

二、宿主机目录规划(提前创建,避免权限问题)

自定义路径(示例为 /opt/aria2,可根据自身需求修改),执行以下命令创建目录:

# 自定义路径,例如 /opt/aria2
mkdir -p /opt/aria2/config   # 用于存放aria2配置、session会话、日志文件
mkdir -p /opt/aria2/downloads # 用于存放下载完成的文件

三、一键部署(Docker CLI 方式,适合快速启动)

1)启动 aria2 核心服务(带 RPC 密钥,保障安全)

docker run -d \
  --name aria2-pro \
  --restart unless-stopped \
  --log-opt max-size=1m \
  -e PUID=$(id -u) \
  -e PGID=$(id -g) \
  -e UMASK_SET=022 \
  -e RPC_SECRET=你的强密码 # 务必修改为自己的随机强密码,比如字母+数字+符号
  -e RPC_PORT=6800 \
  -e LISTEN_PORT=6888 \
  -p 6800:6800 \
  -p 6888:6888 \
  -p 6888:6888/udp \
  -v /opt/aria2/config:/config \
  -v /opt/aria2/downloads:/downloads \
  p3terx/aria2-pro

关键说明:

  • RPC_SECRET:必须改成长随机密码,防止他人未授权访问你的aria2服务

  • 端口用途:

    • 6800:RPC(JSON-RPC)端口,用于Web面板对接aria2

    • 6888:BT下载的TCP+UDP端口,可在路由器做端口转发,提升下载速度

2)启动 AriaNg Web 面板(可视化管理)

docker run -d \
  --name ariang \
  --restart unless-stopped \
  -p 6880:6880 \
  p3terx/ariang

四、docker-compose 方式(更易维护,适合长期使用)

创建 aria2.yml 文件(文件名可自定义),复制以下内容,修改密码和路径即可使用:

version: "3.8"

services:
  aria2:
    image: p3terx/aria2-pro
    container_name: aria2-pro
    restart: unless-stopped
    environment:
      PUID: 1000 # 可通过 id -u 命令查看自身PUID,默认1000即可
      PGID: 1000 # 可通过 id -g 命令查看自身PGID,默认1000即可
      UMASK_SET: "022"
      RPC_SECRET: "你的强密码" # 替换为自己的密码
      RPC_PORT: 6800
      LISTEN_PORT: 6888
    ports:
      - "6800:6800"
      - "6888:6888"
      - "6888:6888/udp"
    volumes:
      - /opt/aria2/config:/config # 映射配置目录,与前面创建的目录对应
      - /opt/aria2/downloads:/downloads # 映射下载目录,与前面创建的目录对应

  ariang:
    image: p3terx/ariang
    container_name: ariang
    restart: unless-stopped
    ports:
      - "6880:6880"

启动命令(在 aria2.yml 文件所在目录执行):

docker-compose -f aria2.yml up -d

五、访问 Web 面板并连接 aria2 服务

  1. 浏览器打开 Web 面板:http://你的主机IP:6880(主机IP为部署Docker的设备IP,比如192.168.1.100)

  2. 配置 RPC 连接(对接aria2核心):

    1. 点击 AriaNg 页面顶部「设置」→ 左侧「RPC」

    2. RPC 地址:http://你的主机IP:6800/jsonrpc

    3. RPC 密钥:填写前面设置的 RPC_SECRET(你的强密码)

    4. RPC 端口:保持6800不变

  3. 测试连接:配置完成后,页面会提示「连接成功」,此时即可正常添加下载任务(HTTP、BT、磁力链接均可)。

六、防火墙/端口转发(关键,提升下载速度)

  • 宿主机防火墙放行端口:6800(TCP)、6888(TCP+UDP),避免端口被拦截

  • 路由器端口转发:将路由器的6888端口(TCP+UDP)转发到宿主机IP(即部署aria2的设备IP),实现外网BT连接,大幅提升下载速度。

七、常用优化(可选,提升下载体验)

进入宿主机配置目录 /opt/aria2/config/,编辑 aria2.conf 文件(若没有则新建),添加以下优化配置,改完重启aria2即可生效:

# 最大同时下载任务数(根据自身设备性能调整,默认5即可)
max-concurrent-downloads=5
# 每个下载服务器的最大连接数(越大下载越快,建议16)
max-connection-per-server=16
# 最小分片大小(分片下载,建议10M)
min-split-size=10M
# 分片数量(与最小分片配合,建议16)
split=16
# 磁盘缓存(减少磁盘读写,提升性能,根据内存调整,建议64M)
disk-cache=64M
# 自动删除已完成任务的临时文件(避免占用空间)
clean-cycle=30
# 禁止下载完自动删除种子文件(按需开启,0=不删除,1=删除)
auto-remove-old-downloadResult=0

重启aria2命令:

docker restart aria2-pro

八、常见问题排查

  • Web面板连接失败:检查宿主机防火墙是否放行6800端口、aria2容器是否正常运行docker ps 查看)、RPC密钥是否填写正确

  • 下载速度慢:检查路由器是否做了6888端口转发、BT tracker是否正常更新(p3terx/aria2-pro会自动更新,无需手动操作)

  • 权限问题(下载文件无法访问):确认宿主机目录 (/opt/aria2/config、/opt/aria2/downloads) 的权限,可执行 chmod 777 -R /opt/aria2 临时授权(生产环境可按需调整权限)