zoukankan      html  css  js  c++  java
  • Docker部署Python爬虫项目

     

    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 
    ### 到此目录下你就会看到产生的数据
  • 相关阅读:
    虚函数和纯虚函数
    MS CRM 2011中PartyList类型字段的实例化
    MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(4)
    MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(2)
    MS CRM 2011的自定义和开发(10)——CRM web服务介绍(第二部分)——IOrganizationService(二)
    MS CRM 2011 SDK 5.08已经发布
    MS CRM 2011 Q2的一些更新
    最近很忙
    Microsoft Dynamics CRM 2011最近的一些更新
    补一篇,Update Rollup 12 终于发布了
  • 原文地址:https://www.cnblogs.com/Rxtong/p/11927525.html
Copyright © 2011-2022 走看看