跳到主要内容

离线下载工具:Aria2

概述

当我们刷到好看的剧或电影,往往希望给路由器下发下载任务进行离线下载,而 Aria2 正是离线下载的好工具,本文介绍如何使用云原生的方式部署 Aria2 到路由器。

开源项目

本文部署的 Aria2 使用这个开源项目构建的容器镜像:https://github.com/P3TERX/Aria2-Pro-Docker

目录结构

aria2
├── daemonset.yaml
└── kustomization.yaml

准备 daemonset.yaml

daemonset.yaml
apiVersion: apps/v1
kind: DaemonSet
metadata:
labels:
app: aria2
name: aria2
namespace: default
spec:
selector:
matchLabels:
app: aria2
template:
metadata:
labels:
app: aria2
spec:
terminationGracePeriodSeconds: 1
containers:
- image: docker.io/p3terx/aria2-pro:202209060423
imagePullPolicy: IfNotPresent
name: aria2
env:
- name: LISTEN_PORT
value: "16881"
- name: RPC_PORT
value: "6800"
- name: RPC_SECRET
value: "111111"
- name: PUID
value: "0"
- name: PGID
value: "0"
- name: IPV6_MODE
value: "true"
- name: TZ
value: "Asia/Shanghai"
- name: SPECIAL_MODE
value: "move"
volumeMounts:
- mountPath: /config
name: config
- mountPath: /downloads
name: media
- image: docker.io/p3terx/ariang:latest
imagePullPolicy: IfNotPresent
name: ariang
dnsPolicy: Default
hostNetwork: true
restartPolicy: Always
volumes:
- name: config
hostPath:
path: /data/aria2/config
type: DirectoryOrCreate
- name: media
hostPath:
path: /data/media/downloads
type: DirectoryOrCreate
updateStrategy:
rollingUpdate:
maxSurge: 0
maxUnavailable: 1
type: RollingUpdate
  • 注意修改 yaml 中指定的密码(111111)。

准备 kustomization.yaml

kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

resources:
- daemonset.yaml

namespace: default

访问 Aria2

访问入口:http://路由器内网 IP:6880/

用浏览器打开 Aria2 的 Web 界面后,在 AriaNg 设置 新建 RPC 设置,输入 Aria2 的 RPC 地址:http://<路由器 IP>:6800/jsonrpc,密码为 yaml 中设置的密码:

然后就可以在【正在下载】中去新建下载任务了:

按照本文中 yaml 的配置,下载完成的文件会落盘到宿主机的 /data/media/downloads/completed 文件夹下。