使用Aria2实现离线下载

最近有需要BT下载,但有的资源很冷门,速度很慢,总不能一直开着电脑下载,于是想到部署个离线下载。想起之前用雨云服务器拿来部署兰空图床感觉效果不错,发现内存剩的还挺多,所以继续压榨一下😏

提示:我使用的是NAT模式的服务器,具体操作会与有独立IP的服务器有所不同

安装Aria2

本着简便(懒)的原则,直接使用docker compose部署Aria2

使用的是P3TERX大佬修改好的版本——Aria2-Pro-Docker,开箱即用

参照https://blog.l3zc.com/2024/08/aria2-downloading-server/的文章进行操作

  1. 新建目录

    mkdir /home/aria2
    
  2. 进入目录

    cd /home/aria2
    
  3. 创建并编辑配置文件``docker-compose.yml`

    services:Aria2-Pro:container_name: aria2-proimage: p3terx/aria2-proenvironment:- PUID=65534- PGID=65534- UMASK_SET=022- RPC_SECRET=你的RPC密码   # 修改这里的值- RPC_PORT=6800- LISTEN_PORT=6888- DISK_CACHE=64M- IPV6_MODE=false- UPDATE_TRACKERS=true- CUSTOM_TRACKER_URL=- TZ=Asia/Shanghaivolumes:- ./aria2-config:/config- ./aria2-downloads:/downloadsnetwork_mode: bridge  # 如果你需要用到 IPV6 网络,也可以使用 host 模式ports:- 6800:6800- 6888:6888- 6888:6888/udprestart: unless-stopped# 防止日志塞满硬盘logging:driver: json-fileoptions:max-size: 1m# 这里使用的AriaNg面板,也可以使用其他面板AriaNg:container_name: ariangimage: p3terx/ariangcommand: --port 6880 --ipv6network_mode: bridgeports:- 6880:6880restart: unless-stoppedlogging:driver: json-fileoptions:max-size: 1m
    
  4. 启动容器

    根据docker安装情况不同,可能没有docker-compose命令,换成docker compose即可

    docker-compose up -d
    
  5. 放行端口6800和6880,假设为12345和23456

    image-20241112133250297

  6. 使用Cloudflare实现域名访问AriaNG面板

    创建两个CNAME记录,目标值为雨云NAT端口映射中的备用地址
    在这里插入图片描述
    image-20241112135107731

    创建重定向规则

    这里没有像上次兰空图床那样创建Origin Rules,因为https的问题会导致RPC无法配置,所以改为使用重定向

    image-20241112133544987

  7. 这样就可以使用域名访问AriaNG面板了,虽然地址栏会显示重定向后的地址和端口,但IP不会暴露

  8. 配置RPC

    RPC地址直接填写aria2服务的备用地址即可,比如我这里就应该是xxxxxxx:12345

    PRC密钥填写配置文件中的RPC_SECRET的值

    image-20241112133921737

  9. 填写完成后刷新页面即可,Aria2状态为已连接则成功

  10. 测试

使用BT下载[Ubuntu](Alternative downloads | Ubuntu)

image-20241112134336411

随便选择一下,下载.torrent文件。然后回到AriaNG,点击新建➡️点击文件图标➡️打开种子文件➡️选择刚才下载的.torrent文件➡️立即下载

image-20241112134455628

image-20241112134540338

等几秒就会有下载速度了,下载速度取决于资源热度和服务器带宽

image-20241112134735047

  1. 至此,Aria2已成功部署,但是从服务器下载文件还需要额外的手段,AriaNG只能让服务器自己下载,却无法从服务器下载文件到本地,目前我是直接用scp命令下载,不过使用Alist会更方便,等之后再部署

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/16410.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

第三百二十三节 Java线程教程 - Java同步器

Java线程教程 - Java同步器 同步器对象与一组线程一起使用。 它维护一个状态,根据它的状态,它让一个线程通过或强迫它等待。 本节将讨论四种类型的同步器: SemaphoresBarriersLatchesExchangers 信号量 信号量用于控制可以访问资源的线程…

HTB:Active[WriteUP]

目录 连接至HTB服务器并启动靶机 1.How many SMB shares are shared by the target? 使用nmap对靶机TCP端口进行开放扫描 2.What is the name of the share that allows anonymous read access? 使用smbmap通过SMB服务对匿名用户共享权限情况进行扫描 3.Which file has…

vue3【组件封装】S-icon 图标 ( 集成 iconify )

1. 安装依赖 npm i -D iconify/jsonnpm i --save-dev iconify/vue2. 组件封装 src/components/S-icon.vue <script setup lang"ts"> // 搜索图标 https://icon-sets.iconify.design/ import { Icon } from iconify/vue defineProps({icon: {type: String,requ…

AI视觉小车基础--1.开发前的准备

1. 结束开机大程序 为了能够方便体验小车的APP功能&#xff0c;系统中增加了一个程序&#xff0c;此程序集合了APP的控制功能和玩法&#xff0c;所以称做“大程序”&#xff0c;而且在主板系统开机时&#xff0c;此程序会自动启动&#xff0c;所以称做“开机自启动大程序”。 开…

6.传输层协议、ACL

TCP和UDP协议 TCP/IP协议组的传输层协议 TCP(Transmission Control Protocol ) 传输控制协议 UDP&#xff08;User Datagram Protocol &#xff09; 用户数据报协议 TCP协议 TCP是面向连接的、可靠的进程到进程通信的协议 TCP提供全双工服务&#xff0c;即数据可在同一时间双…

避免数据丢失!在NAS上保存Docker容器配置的正确姿势

引言 如果你使用NAS来管理家庭或小型企业的数据,那么Docker容器一定不陌生。它能快速部署各种应用,比如Jellyfin、Plex等多媒体服务器。然而,很多人却踩过一个坑:NAS关机重启后,Docker容器的配置居然丢了!辛苦搭建的环境瞬间化为乌有。别担心,今天就来分享一套实用的技…

【Java的动态代理】

Java中有两种实现动态代理的方式jdk动态代理和CGLIB动态代理 jdk动态代理: 基于接口的动态代理, 目标对象必须实现接口cglib动态代理: 基于字节生成技术(ASM代码生成库), 能在运行时对java类和接口进行扩展实现 那么动态代理这个技术到底能帮我们干啥? 个人感觉这个技术在框…

python怎么安装numpy

1、在python官网https://pypi.python.org/pypi/numpy中找到安装的python版本对应的numpy版本。 例如&#xff1a; python版本是&#xff1a; 下载的对应numpy版本是&#xff1a; 2、将numpy下载到python的安装目录下的scripts文件夹中&#xff1b; 3、然后在cmd中执行以下命…

计算机三级 数据库技术

第一章 数据库应用系统开发方法 1.1 数据库应用系统生命周期 软件工程:软件工程的思想&#xff0c;即用工程的概念、原理、技术和方法对软件生产、开发的全过程进行跟踪和管理 软件开发方法:瀑布模型、快速原型模型、螺旋模型 DBAS生命周期模型 1.2 规划与分析 系统规划与定…

网络编程套接字2

之前我们已经介绍了UDP套接字流程&#xff0c;接下来我们介绍TCP流套接字编程&#xff0c;TCP的一个核心特点&#xff0c;面向字节流&#xff0c;读写数据的基本单位就是字节。 1.API介绍 1.1ServerSocket:是创建TCP服务器Socket的API&#xff08;专门给服务器用&#xff09;…

偌依-防重复提交

其中的使用工具类可去偌依的代码中查找 需要配合 springboot自定义过滤器构建可重复读取inputStream的request&#xff08;来源若依&#xff09; springboot自定义过滤器构建可重复读取inputStream的request&#xff08;来源若依&#xff09;-CSDN博客 定义注解 package co…

3D 数组插值 MATLAB

插值是一种根据现有数据点创建的趋势查找查询数据点值的方法。MATLAB 提供了许多选项来对 N 维数据执行插值。 在本文中&#xff0c;我们将讨论如何借助一些示例在 3D 数组中插入数据。我们将使用 MATLAB 的 interpn&#xff08;&#xff09; 函数来执行插值。 语法 vq interp…

如何在Typora中绘制流程图

如何在Typora中绘制流程图 在撰写文档时&#xff0c;清晰的流程图能极大地提升信息传递的效率。Typora是一款优秀的Markdown编辑器&#xff0c;支持通过Mermaid语法快速绘制流程图。本文将介绍如何在Typora中创建和自定义流程图&#xff0c;帮助你用更直观的方式呈现逻辑结构和…

SpringBoot集成Redis(全流程详解)

前言 通过在SpringBoot中集成Redis&#xff0c;详细梳理集成过程。包括SpringBoot启动过程中&#xff0c;容器的刷新、自动配置的流程、各类注解的处理。 类比在纯Spring中集成Redis&#xff0c;体验SpringBoot自动配置给开发带来了哪些便利。 一、测试样例 1.1配置文件 a…

机器人控制技术、传感器技术、Wi-Fi无线通信技术、AI视觉应用教学和实训: 智能小车车臂教学平台

1、基本介绍 智能车臂教学平台在硬件上采用模块化设计&#xff0c;主控板、运动车体、机械臂、各类传感器等都可以进行拆卸操作&#xff1b;在接口上&#xff0c;采用标准拔插式设计&#xff0c;减少接线&#xff0c;方便组装。使用Wi-Fi与控制软件进行通信&#xff0c;支持遥…

ssm113ssm框架的购物网站+vue(论文+源码)_kaic

毕 业 设 计&#xff08;论 文&#xff09; 题目&#xff1a;网上超市系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本网上超市系统就是在这…

C++ 里面散发的咖喱味儿 - Currying函数式编程

C 里面散发的咖喱味儿 - Currying函数式编程 大家好&#xff0c;最近几篇都在聊C里面的函数式编程&#xff0c;今天我们继续就某一个点来深入聊一下&#xff0c;来聊聊在 C 中如何使用 std::bind 来实现函数式编程&#xff0c;尤其是柯里化&#xff08;Currying&#xff09;这…

【Gitee版】一篇教你如何快速入门git(详解)

前言--区分Git与Gitee Git 是一个强大的分布式版本控制系统&#xff0c;用于管理源代码。市面上有很多基于git的仓库网站&#xff0c;例如&#xff1a;GitHub、Gitee、GitCode等&#xff0c;它们之间的关系就好像是&#xff1a;git为基类&#xff0c;剩余为子类的样子。使用的…

Linux系统编程学习 NO.11——进程的概念(2)

谈谈进程的性质 进程的竞争性 由于CPU资源是稀缺的,进程数量是众多的。不可避免需要造成进程排队等待CPU资源的动作&#xff0c;内核的设计者为了让操作系统合理的去调度这这些进程&#xff0c;就产生了进程优先级的概念。设置合理的进程优先级能让不同进程公平的去竞争CPU资…