jionlp数据分析 2017-08-25 10:44 采纳率: 0%
浏览 1890

Pyspider爬虫框架使用Docker部署分布式连接redis数据库,连不上?

问题是这样的,使用docker布置分布式爬虫,框架采用pyspider,消息队列使用redis数据库,但是却无法在数据库中显示消息信息,
消息队列中无信息
求解!

代码如下:
单点redis 虚拟机上命令行部署:ip 192.168.0.137

 docker run --name mysql -d -p 192.168.0.137:3306:3306 -e MYSQL_ROOT_PASSWORD=root1234 mysql:latest

docker run -d --name redis -p 192.168.0.137:6379:6379 --restart=always redis:latest

docker run --name phantomjs -m 512m -d -e EXCLUDE_PORTS=5000,23333,24444 -p 192.168.0.137:25555:5000 --restart=always cecil/pyspider:add_mysql

docker run --name phantomjs-lb -d --link phantomjs --restart=always dockercloud/haproxy:latest

docker run --name fetcher  -m 128m -d --link phantomjs-lb:phantomjs -e EXCLUDE_PORTS=5000,25555,23333 --restart=always cecil/pyspider:add_mysql \
 **--message-queue "redis://192.168.0.137:6379/1"** \
 --phantomjs-proxy "phantomjs:80" \
 fetcher --xmlrpc

docker run --name fetcher-lb -d --link fetcher --restart=always dockercloud/haproxy:latest

docker run --name processor -m 256m -d --restart=always cecil/pyspider:add_mysql \
 --projectdb "mysql+projectdb://root:root1234@192.168.0.137:3306/projectdb" \
 --message-queue "redis://192.168.0.137:6379/2"

docker run --name processor-lb -d --link processor --restart=always dockercloud/haproxy:latest

docker run --name scheduler -d -p 192.168.0.137:23333:23333 --restart=always cecil/pyspider:add_mysql \
 --taskdb "mysql+taskdb://root:root1234@192.168.0.137:3306/taskdb" \
 --resultdb "mysql+resultdb://root:root1234@192.168.0.137:3306/resultdb" \
 --projectdb "mysql+projectdb://root:root1234@192.168.0.137:3306/projectdb" \
 --message-queue "redis://192.168.0.137:6379/3" \
 scheduler --inqueue-limit 5000 --delete-time 43200

docker run --name result_worker -m 256m -d --restart=always cecil/pyspider:add_mysql \
 --taskdb "mysql+taskdb://root:root1234@192.168.0.137:3306/taskdb" \
 --resultdb "mysql+resultdb://root:root1234@192.168.0.137:3306/resultdb" \
 --projectdb "mysql+projectdb://root:root1234@192.168.0.137:3306/projectdb" \
 --message-queue "redis://192.168.0.137:6379/4"

docker run --name webui -m 256m -d -p 192.168.0.137:5000:5000 -e EXCLUDE_PORTS=24444,25555,23333 --link fetcher-lb:fetcher --restart=always cecil/pyspider:add_mysql \
 --taskdb "mysql+taskdb://root:root1234@192.168.0.137:3306/taskdb" \
 --resultdb "mysql+resultdb://root:root1234@192.168.0.137:3306/resultdb" \
 --projectdb "mysql+projectdb://root:root1234@192.168.0.137:3306/projectdb" \
 --message-queue "redis://192.168.0.137:6379/5" \
 webui --username "root" --password "123456" --need-auth --max-rate 0.2 --max-burst 2 --scheduler-rpc "http://192.168.0.137:23333/" --fetcher-rpc http://fetcher/

其中重点是若干redis数据库语句,

 --message-queue "redis://192.168.0.137:6379/4" 

是否有误?

  • 写回答

1条回答 默认 最新

  • devmiao 2017-08-25 15:54
    关注
    评论

报告相同问题?

悬赏问题

  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型