docker安装pyspider方法2:mysql+rabbitmq+pyspider(python2)
一、前言
二、使用docker hub上的binux/pyspider镜像部署
1 部署MySQL
2 部署rabbitmq
3 改造binux/pyspider:latest镜像
4 制作docker-compose.yml,让不同的功能进行联动
三、 遇到的几个错误
一、前言
前面我们讲过一篇最简单的方法来安装pyspiderdocker安装pyspider方法1:pyspider最简单的安装方法
但如果在生产环境中使用的话,还是需要使用多个软件来搭建架构来使用的。
使用架构来安装pyspider还是有不少问题的,网上的很多教程要么过时了,要么不完整,有不少坑。
binux/pyspider镜像在docker hub和github上有不同的镜像文件,所以就分两种安装方法来讲。
1、docker hub (Python2)
docker hub上提供的binux/pyspider:latest是几年前的,这个镜像默认Python是2.7的。
https://hub.docker.com/r/binux/pyspider
2、github (Python3)
在github上的文件有更新,可以支持python3,但需要自己使用Dockerfile去创建镜像来使用。
https://github.com/binux/pyspider
部署都是使用docker结合docker-compose的形式来进行安装。
二、使用docker hub上的binux/pyspider镜像部署
使用架构:mysql+rabbitmq+pyspider
主要解决的问题:
ImportError: No module named MySQLdb
Authentication plugin ‘caching_sha2_password’ cannot be loaded
1、部署MySQL
使用MySQL5.7镜像。如果用mysql8.0的话,会稍微麻烦一点
# docker run –name mysql -d -v /data/mysql:/var/lib/mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=yes mysql:5.7
把MySQL的数据文件保存在宿主机的/data/mysql目录中
MYSQL_ALLOW_EMPTY_PASSWORD=yes 不设置密码进行连接访问,容器之间使用link进行通信
2、部署rabbitmq
# docker run –name rabbitmq -d rabbitmq:latest
3、改造binux/pyspider:latest镜像
# docker run -it –name pyspider -d binux/pyspider
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE rabbitmq latest 1dcca37da0b0 2 days ago 216MB mysql latest 5c62e459e087 3 weeks ago 556MB binux/pyspider latest c702f1345678 3 years ago 837MB
进入pyspider
。。。。。。。。
前往微信公众号查看全文:https://mp.weixin.qq.com/s/zjDjz3109rZ4MZjrx05D8g
其它相关文章:
1.docker安装pyspider方法1:pyspider最简单的安装方法
2.docker安装pyspider方法2:mysql+rabbitmq+pyspider(python2)
3.docker安装pyspider方法3:mysql+redis+HAProxy+pyspider(python3)
4.pyspider的简单使用