# aria2-ariang-x-docker-compose
**Repository Path**: Link-A/aria2-ariang-x-docker-compose
## Basic Information
- **Project Name**: aria2-ariang-x-docker-compose
- **Description**: Docker compose files for Aria2+ AriaNg+ filerun/ Nextcloud/ h5ai + Plex. 图形化BT,磁力,离线下载,文件管理,播放,投屏
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2019-11-14
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Aria2-AriaNg-X docker-compose
中文 | [English](https://github.com/wahyd4/aria2-ariang-x-docker-compose/blob/master/README.en.md)
- [Aria2-AriaNg-X docker-compose](#aria2-ariang-x-docker-compose)
- [应用截图](#应用截图)
- [为什么会有这个东西](#为什么会有这个东西)
- [比较 FileBrowser, Filerun, h5ai 和 Nextcloud](#比较-filebrowser-filerun-h5ai-和-nextcloud)
- [安装与使用](#安装与使用)
- [使用 Filebrowser 安装](#使用-filebrowser-安装)
- [使用 **h5ai** 作为在线文件查看和播放](#使用-h5ai-作为在线文件查看和播放)
- [使用 **Filerun** 作为在线文件管理器](#使用-filerun-作为在线文件管理器)
- [使用 **Nextcloud** 安装](#使用-nextcloud-安装)
- [ARM Nextcloud](#arm-nextcloud)
- [升级](#升级)
- [高级特性](#高级特性)
- [找到你下载的文件](#找到你下载的文件)
- [什么?一个 Docker 镜像包含所有功能?Yes!!!(如:在群晖中运行)](#什么一个-docker-镜像包含所有功能yes如在群晖中运行)
- [常见问题 FAQ](#常见问题-faq)
- [Plex](#plex)
- [快速运行](#快速运行)
这个项目是提供一个 docker-compose 文件,让你可以一步就拥有一个集图形化界面的 Aria2 下载([AriaNg](https://github.com/mayswind/AriaNg))和在线预览和管理文件的平台:
- [FileRun](https://www.filerun.com/)
- [Nextcloud](https://nextcloud.com/)
- [h5ai](https://larsjung.de/h5ai/)
- [Filebrowser](https://filebrowser.xyz/)
## 应用截图
| 名称 | 截图 |
| :---------: | :--------------------------------------------------------------------------------------------------------------: |
| AriaNg |  |
| Filerun |  |
| h5ai |  |
| nextcloud |  |
| Filebrowser |  |
## 为什么会有这个东西
- 使用 Docker-compose 让每个 docker 镜像只做一件事,则其本身会更加稳定,不易受其他组件的影响,也更方便管理
- AriaNg 着实比之前的 Aria2 之前的其他图形化界面程序漂亮了太多。让人很喜欢。
- 在线查看,预览下载的文件,让我们自己在自己 vps 上就可以拥有某些在线服务商提供的离线下载(迅雷、115)这样的功能。而且所有的控制权都在你手里,不用担心被删除资源
## 比较 FileBrowser, Filerun, h5ai 和 Nextcloud
| 比较类别 | Filerun | Nextcloud | h5ai | Filebrowser |
| --------------- | --------------------- | --------------------------------------------------- | ---------------------------------------------- | -------------------- |
| Docker 镜像大小 | 200M | 500M | 20M | 40M |
| 功能 | 功能少 | 功能强大 | 功能少 | 功能足够 |
| UI | 简洁 | 精美 | 简洁 | 简洁 |
| 依赖 | 必须要 Mysql 数据库 | 可以直接使用 内嵌 SQLlite,也可以使用其他外置数据库 | 无数据库 | 内嵌数据库 |
| 集成难度 | 全自动,无需人工操作 | 需要人工操作两步 | 全自动 | 全自动 |
| 客户端 | 无 | 有移动和桌面客户端 | 无 | 无 |
| 登录安全 | 支持用户名密码登录 | 支持用户名密码登录 | 无 | 用户名密码登录 |
| 容器数量 | mysql, filerun, aria2 | nextcloud, aria2 | h5ai, aria2 | 只需一个 |
| 总结 | 轻量级 | 功能全面,本身可以作为一个很好的云盘使用 | 仅提供文件列表,和查看文件,播放音视频文件功能 | 一个容器集成所有功能 |
## 安装与使用
_提示_ 如果你不是在本地安装,请记得替换 localhost 为你的 ip 或者绑定的域名哦!!
1. 安装 Docker CE (社区版),不要使用 Ubuntu 等操作系统系统自带的安装包来安装,因为他们的版本都很老了。推荐使用[官方提供](https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/)的方式安装
2. 安装 Docker Compose
### 使用 Filebrowser 安装
如果你希望指定`UID`和`GID`,还希望可以使用`Plex` 来管理下载的电影等资源,强烈推荐使用 Filebrowser。
```bash
git clone https://github.com/wahyd4/aria2-ariang-x-docker-compose.git
cd aria2-ariang-x-docker-compose/plex-filebrowser
# 前往 https://www.plex.tv/claim/ 获取 TOKEN, 并填充至 `plex-filebrowser` 目录下的 `docker-compose.yml`下的 `PLEX_CLAIM`字段。
docker-compose up -d
```
就这么简单!
1. Filebrowser
2. AriaNg:
3. Plex:
> **注意**: 如果你使用非`80`端口,则需要进入 AriaNg,修改 RPC 地址端口为你暴露出的端口。因为该镜像 Filebrowser 和 Aria2c 共享一个端口。
### 使用 **h5ai** 作为在线文件查看和播放
```bash
git clone https://github.com/wahyd4/aria2-ariang-x-docker-compose.git
cd aria2-ariang-x-docker-compose/h5ai
docker-compose up -d
```
搞定!
1. 查看文件 h5ai:
2. AriaNg:
### 使用 **Filerun** 作为在线文件管理器
```bash
git clone https://github.com/wahyd4/aria2-ariang-x-docker-compose.git
cd aria2-ariang-x-docker-compose/filerun
docker-compose up -d
```
一切搞定,尽情享受吧!
1. 文件管理 Filerun, 请使用 `superuser / superuser` 进行登录:
2. AriaNg:
### 使用 **Nextcloud** 安装
```bash
git clone https://github.com/wahyd4/aria2-ariang-x-docker-compose.git
cd aria2-ariang-x-docker-compose/nextcloud
docker-compose up -d
```
1. 文件管理 Nextcloud: , 使用你喜欢的任意用户名和密码登录
2. AriaNg:
Nextcloud 还需额外的一点手动操作,[链接配置外部存储](https://github.com/wahyd4/aria2-ariang-x-docker-compose/tree/master/nextcloud#nextcloud-配置-external-storage)
> **注意**: 由于 Nextcloud 镜像启动较慢,平均需要 3-10 分钟,在启动之前访问会得到`502`错误,请耐心等待一下,如果 Docker 相关容器没有错误日志,即不用担心。
### ARM Nextcloud
终于你在树莓派🍓上也可以使用本项目了。ARM 版本的 Nextcloud 和普通的 Nextcloud 提供一样的功能,唯一不同的是,启动的命令需要指定不同的文件
```bash
git clone https://github.com/wahyd4/aria2-ariang-x-docker-compose.git
cd aria2-ariang-x-docker-compose/nextcloud
docker-compose -f arm32-docker-compose.yml up
```
1. 文件管理 Nextcloud: , 使用你喜欢的任意用户名和密码登录
2. AriaNg:
Nextcloud 还需额外的一点手动操作,[链接配置外部存储](https://github.com/wahyd4/aria2-ariang-x-docker-compose/tree/master/nextcloud#nextcloud-配置-external-storage)
> **注意**: 由于 Nextcloud 镜像启动较慢,平均需要 3-10 分钟,在启动之前访问会得到`502`错误,请耐心等待一下,如果 Docker 相关容器没有错误日志,即不用担心。
## 升级
进入 filerun, h5ai 或者 nextcloud 目录
```bash
docker-compose stop # 将 docker 镜像暂时关掉
git pull origin master # 获取最近代码
docker-compose pull # 手动获取最新版镜像
docker-compose up -d # 运行最新版本的镜像
```
## 高级特性
1. 使用`80`端口。 默认情况下,我们使用 8000 端口,而不是 80 端口,主要是防止你可能有其他程序需要使用 80 端口。但是你可以自己修改对外暴露的端口。
打开 filerun,h5ai, nextcloud 下面的 `docker-compose.yml`。将 aria2 节点下面的 ports 属性的 `8000` 改为 `80` 即可。
```yaml
aria2:
image: wahyd4/aria2-ui:filerun
links:
- web:file-manager
ports:
- "8000:80" #将此处8000 改为 80端口
- "6800:6800"
volumes_from:
- web
```
2. 对 AriaNg 启用 Basic Auth 登录密码验证,同样地,打开任何一个文件平台下面的 `docker-compose.yml`文件。 启用和修改 aria2 服务下面的 environment 相关属性:
```yaml
environment:
- ARIA2_USER=admin #basic auth 用户名
- ARIA2_PWD=password #basic auth 密码
- ENABLE_AUTH=true # 是否启用用户名和密码验证, 默认情况下不启用,当该值为 false 时也不启用。
```
3. 启用 HTTPS,为了实现该功能,我们采用 Caddy 来作为我们的 web 服务器和反向代理服务器。当我们绑定域名后,Caddy 自动为站点启用 HTTPS。也仅仅需要修改相应 `docker-compose.yaml`文件下 aria2 服务的相关属性即可。(由于 filerun 程序本身的问题,目前暂不支持 HTTPS)
```yaml
environment:
- DOMAIN=demo.toozhao.com #这里输入你想要绑定的域名, 必须首先在域名管理处添加 A 记录。当我们仅仅通过 ip 访问时则应该改为: :80, 这表示绑定所有可以使用的 ip
- SSL=true #当值为 true 时,系统会自动启用 HTTPS
- RPC_SECRET=Hello #这个属性是 配置AriaNg 连接 Aria2 时需要,你可以输入你想要设置的密码。一旦设置了 HTTPS, Aria2 也只能使用 HTTPS。这时就必须使用该设置。
```
由于配置 HTTPS 比较麻烦,图文请参见[启用 SSL](https://github.com/wahyd4/aria2-ariang-x-docker-compose/blob/master/enable-ssl.md)
## 找到你下载的文件
这里的 docker-compose 文件,将本地的`./data` 目录作为了 docker volume 来存储下载的各类文件,因此你可以在 `docker-compose` 文件所在目录`data` 子目录目录找到所有文件。你也可以根据自己的需要修改目录设置
## 什么?一个 Docker 镜像包含所有功能?Yes!!!(如:在群晖中运行)
```bash
docker run -d --name aria2-ui -p 80:80 -v ~/data:/data wahyd4/aria2-ui
```
`80` 本地则是你暴露出对外访问的 AriaNg 图形界面的端口, `~/data/` 是你所有通过 Aria2 下载的文件目录
- Aria2:
- FileManger:
**推荐** :使用该 Docker 镜像,一个镜像集成 BT 下载、文件管理、在线播放等功能。关于该镜像的更多使用介绍,请参考:
## 常见问题 FAQ
- Nextcloud 没有权限管理下载的文件? 不要忘记在主机上运行`chown -R www-data <文件夹>`,该文件夹即为你设置的 docker-compose nextcloud service 下面设置的位于`宿主机(不是dokcer 容器里面的)`的共享文件夹。
- AriaNg 界面不能显示?请记住目前在访问 AriaNg 界面的时候,地址最后一定要添加 `/`
- Nextcloud 不能访问?页面显示`502`?, 由于 Nextcloud 启动耗时较长,大致为`5`分钟左右,请耐心等待。如果 3 分钟之后依然不能显示,请查看`nextcloud`的 Docker 容器是否有错误日志输出,如果没有,再稍等多等一下即可。
- 不支持 ARM CPU 平台? 目前暂没有让 docker-compose 项目支持 ARM 的计划,但是推荐你试试这个单镜像版本 [`wahyd4/aria2-ui:arm64`](https://github.com/wahyd4/aria2-ariang-docker)
- 下载的 BT 或者磁力完全没有速度怎么办? 建议先下载一个热门的 BT 种子文件,而不是磁力链接。这样可以帮助缓存 DHT 文件,渐渐地,速度就会起来了。比如试试下载树莓派操作系统的 BT 种子?[前往下载](https://www.raspberrypi.org/downloads/raspbian/), 也可以前往 [Internet Archive](https://archive.org/details/feature_films) 下载免费的电影,以此作为开始。
## Plex

Plex 是一个视频服务器,有了 Plex 之后,你通过本程序可以实现:
`下载视频` -> `文件管理` -> `视频播放` -> `分享 / 远程投屏` 集一体的解决方案。
分别对应的组件为:
`aria2` -> `File Browser` -> `Plex/ File Browser` -> `Plex app / DLNA / Chromecast / Apple airplay` 等等。
### 快速运行
1. 在你希望的运行电脑或者服务器上 git clone 本仓库
2. 前往 获取 TOKEN, 并填充至 `plex-filebrowser` 目录下的 `docker-compose.yml`下的 `PLEX_CLAIM`字段。
3. 在命令行中运行
```bash
cd plex-filebrowser
docker-compose up -d
```
4. 在浏览器中打开 ,使用 Plex 平台账号登录即可像你在其他地方使用 Plex 一样享受播放、投屏的快乐了。
- File Browser:
- AriaNG:
更多 Plex 的使用,请前往: