evlos
V2EX  ›  Docker

一行命令用 Docker 架设 aria2 服务

  •  
  •   evlos · Jul 15, 2015 · 10100 views
    This topic created in 4033 days ago, the information mentioned may be changed or developed.

    刚才写完了可以配合 Aria2 WebUI 使用的 aria2 Dockerfile,来分享一下。

    https://github.com/Evlos/dockerfile

    Usage

    因为仓库已经被发布到了 Docker Hub,所以只要装了 docker,用下面一行指令就可以全部搞定啦。

    docker run -d -p 开放端口:6800 -v 下载目录:/app/download evlos/aria2 --rpc-user=用户名 --rpc-passwd=密码
    

    之后打开 Aria2 WebUI,在 Connection Settings 里填写你服务器的 IP、端口、用户名和密码即可连接。

    http://ziahamza.github.io/webui-aria2/

    Example

    以下是命令示例:

    docker run -d -p 8081:6800 -v /var/www/html/aria2:/app/download evlos/aria2 --rpc-user=username --rpc-passwd=password
    
    • 8081 是我对外开放的 aria2 RPC 端口。
    • /var/www/html/aria2 是我的容器外部下载目录。因为容器外部有一个 nginx 服务器的目录被设置在了 /var/www/html,所以我可以先用 aria2 下载例如 Hacking Team 的种子,然后根据需求下载到本地,还可以直接在浏览器播放下载的 Youtube 视频。

    目前我的 aria2 服务正常运行中:

    aria2 服务正常运行中

    希望对大家有帮助 :)。

    2 replies    2015-07-15 15:02:10 +08:00
    qw7692336
        1
    qw7692336  
       Jul 15, 2015
    如果带转码播放就不错。
    evlos
        2
    evlos  
    OP
       Jul 15, 2015
    @qw7692336
    Youtube 视频的话可以直接用 http://en.savefrom.net/ 获得 mp4 文件的地址,然后用 aria2 下载的。

    要自动转换所有视频可以在 aria2.conf 添加一行
    on-download-complete=/app/on-download-complete.sh
    在 /app/on-download-complete.sh 里面写
    in="$3"
    filename=`basename $in`
    echo "ffmpeg -i $in -c:v libx264 -c:a aac -strict experimental -b:a 192k /app/download/${filename%.*}.mp4"
    还得装个 ffmpeg,直接让 aria2 执行这个脚本不知道会不会因为等待视频转换而卡很久,估计要队列,可能还要写个 Web UI 管理视频转换,看来这样不行,以后有机会再写 > <。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1029 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 19:01 · PVG 03:01 · LAX 12:01 · JFK 15:01
    ♥ Do have faith in what you're doing.