Skip to content

Docker版使用指南

zhangzhijie edited this page Aug 6, 2019 · 3 revisions

阅读本教程前最好先看一下aria2版本的使用简介,方便错误排查

1. 首先需要把docker容器运行起来

docker run -d --name 91porn \
-p 80:80 -p 6800:6800 -p 8080:8080 \
-v [YOUR DIRECTORY]:/root/91porn/videos \
-e "PROXY=127.0.0.1:1087" \
zzjzz9266a/91porn-crawler

端口说明:

  • 80:Web管理界面
  • 6800:aria2对外接口
  • 8080:视频文件web下载(可有可无)

代理:

  • PROXY:只能用http代理,且必须是宿主的ip,不能是 127.0.0.1

2. 进入容器内部运行php代码,或者用 docker exec 命令

docker exec -it 91porn php /root/91porn/91porn.php
//或者
docker exec -it 91porn php /root/91porn/91all.php

只要出现提交 aria2 成功,就可以到web管理页面查看下载进度了,地址为宿主机在网内的ip地址,对应之前的映射端口,类似http://192.168.50.134:80

3. 群晖用户需要ssh连接,如果嫌麻烦的话,可以直接设为定时任务

不过还是建议进入终端运行,可以看到实时进度

4. 配合代理使用ss-privoxy

因为 aria2 不支持 socks5 代理,所以ss的原生代理无法使用,需要转接一层变为http代理

docker run -d --name ss-privoxy -p 8118:8118  \
  -e "SERVER_ADDR={SS服务器地址}" \
  -e "METHOD={加密方法}" \
  -e "PASSWORD={SS密码}" \
  -e "SSPORT={SS端口号}" \
  -e "PROXYPORT=8118" zzjzz9266a/ss-privoxy

每一个环境变量都对应了使用ss的时候填写的内容,PROXYPORT 映射了到宿主的http代理端口;

容器启动以后将宿主的地址填到 aria2 的代理上,注意,不能填 127.0.0.1 ,因为对aria2而言,127.0.0.1 指向的是 91porn 容器,而 91porn 容器上是没有代理的