Docker部署Python爬虫项目的方法步骤


Posted in Python onJanuary 19, 2020

1) 首先安装docker:

# 用 yum 安装并启动
yum install docker -y && systemctl start docker

2) 下载自定义镜像需要用到的基础镜像:

# 这里以centos7为例
docker pull centos:centos7

3) 基础镜像已经准备好了,接下来准备好需要部署的环境服务,以及python项目:

### 创建 dockerfile 文件
mkdir dockerfile && cd dockerfile
### 下载 python(这里以3.7为例)
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz
### 将 python 项目复制到此目录
cp ~/test.py .
### 以及 python 项目的依赖库
cp ~/requirements.txt .

4) 需要自定义docker镜像的大致内容准备好了,接下来编写dockerfile:

vim Dockerfile

### 以centos:centos7来作为基础镜像
FROM centos:centos7
### 下载编译需要用到的软件
RUN yum install -y gcc gcc-c++ autoconf automake libtool make zlib* libffi-devel
### 将dockerfile目录下的python-3.7.3.tgz复制到docker容器内
COPY Python-3.7.3.tgz /usr/local/src
### 编译安装 python
WORKDIR /usr/local/src
RUN tar -xf Python-3.7.3.tgz
WORKDIR Python-3.7.3
RUN ./configure --prefix=/usr/local/python37 && make && make install
ENV PATH /usr/local/python37/bin:$PATH
### 创建工作目录
RUN mkdir /spider
### 将python项目复制到 /spider工作目录下
ADD test.py /spider
ADD requirements.txt /spider
### 设置 /spider 为工作目录
WORKDIR /spider
### 下载 python 项目的依赖库
RUN pip3 install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com -r requirements.txt
### 在创建个爬取的数据存放的目录,这个需要根据自己代码里面设置的目录来创建,例如:
VOLUME /data
### 最后一步,运行docker镜像时运行自己的python项目
### 可以多个参数: CMD ["python3","a","main.py"]
CMD ["python3","test.py"]

5) 接下来构建镜像:(就在此目录下运行)

### docker build -t 镜像名:版本号   镜像名:版本号 均为自定义  别忘了末尾的点“.”
docker build -t pythonspider:v1 .

6) 运行镜像:

### 通过 docker images命令就可以看到刚刚创建的镜像
docker images

### 运行
docker run -d --name spider -v /data:/data pythonspider:v1
### -d为后台运行,--name 后面设置容器名,-v 是目录共享,主机目录和docker容器内目录共享。创建dockerfile的时候,有这一句 VOLUME /data 就是作为共享目录使用的,“:”前的目录为主机目录,后面的目录为容器内目录。。。 最后一个参数 pythonspider:v1 镜像名

cd /data 
### 到此目录下你就会看到产生的数据

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中对列表排序实例
Jan 04 Python
Python中的模块和包概念介绍
Apr 13 Python
Python连接mysql数据库的正确姿势
Feb 03 Python
Python3中使用PyMongo的方法详解
Jul 28 Python
python监控linux内存并写入mongodb(推荐)
Sep 11 Python
Flask数据库迁移简单介绍
Oct 24 Python
代码分析Python地图坐标转换
Feb 08 Python
python版opencv摄像头人脸实时检测方法
Aug 03 Python
Python Excel处理库openpyxl使用详解
May 09 Python
wxPython实现画图板
Aug 27 Python
Tensorflow累加的实现案例
Feb 05 Python
Python API 操作Hadoop hdfs详解
Jun 06 Python
Python Selenium参数配置方法解析
Jan 19 #Python
浅谈tensorflow中张量的提取值和赋值
Jan 19 #Python
python通过安装itchat包实现微信自动回复收到的春节祝福
Jan 19 #Python
使用 Python 处理3万多条数据只要几秒钟
Jan 19 #Python
Python openpyxl模块原理及用法解析
Jan 19 #Python
Python imutils 填充图片周边为黑色的实现
Jan 19 #Python
python opencv 实现对图像边缘扩充
Jan 19 #Python
You might like
PHP 如何利用phpexcel导入数据库
2013/08/24 PHP
深入理解JavaScript系列(28):设计模式之工厂模式详解
2015/03/03 Javascript
js实现刷新iframe的方法汇总
2015/04/27 Javascript
jquery 表单验证之通过 class验证表单不为空
2015/11/02 Javascript
Nodejs初级阶段之express
2015/11/23 NodeJs
JS for循环中i++ 和 ++i的区别介绍
2016/07/20 Javascript
移动端点击图片放大特效PhotoSwipe.js插件实现
2016/08/25 Javascript
什么是JavaScript中的结果值?
2016/10/08 Javascript
jQuery实现给input绑定回车事件的方法
2017/02/09 Javascript
如何使用JS在HTML中自定义字符串格式化
2017/07/20 Javascript
解析vue data不可以使用箭头函数问题
2018/07/03 Javascript
用Object.prototype.toString.call(obj)检测对象类型原因分析
2018/10/11 Javascript
详解如何使用router-link对象方式传递参数?
2019/05/02 Javascript
VUE的history模式下除了index外其他路由404报错解决办法
2019/08/21 Javascript
详解node.js创建一个web服务器(Server)的详细步骤
2021/01/15 Javascript
Python实现list反转实例汇总
2014/11/11 Python
Python中optparse模块使用浅析
2015/01/01 Python
python交互式图形编程实例(二)
2017/11/17 Python
Python2.7基于笛卡尔积算法实现N个数组的排列组合运算示例
2017/11/23 Python
[原创]python爬虫(入门教程、视频教程)
2018/01/08 Python
numpy使用fromstring创建矩阵的实例
2018/06/15 Python
python实现控制台打印的方法
2019/01/12 Python
详解Python安装tesserocr遇到的各种问题及解决办法
2019/03/07 Python
django-rest-framework 自定义swagger过程详解
2019/07/18 Python
Python aiohttp百万并发极限测试实例分析
2019/10/26 Python
python安装gdal的两种方法
2019/10/29 Python
keras实现VGG16 CIFAR10数据集方式
2020/07/07 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
详解CSS3中强大的filter(滤镜)属性
2017/06/29 HTML / CSS
CSS3 实现的缩略图悬停效果
2020/12/09 HTML / CSS
html5 canvas 实现光线沿不规则路径运动
2020/04/20 HTML / CSS
服务之星事迹材料
2014/05/03 职场文书
2015年新农村建设工作总结
2015/05/22 职场文书
奔腾年代观后感
2015/06/09 职场文书
中学生打架《检讨书》范文
2019/08/12 职场文书
高端收音机+蓝牙音箱,JBL TUNER FM带收音蓝牙音箱评测
2021/04/24 无线电