Docker 部署Scrapy的詳解
假設我們要在10臺Ubuntu 部署爬蟲如何搞之?用傳統(tǒng)的方法會吐血的,除非你記錄下來每個步驟,然后步驟之間的次序還完全一樣,這樣才行。但是這樣還是累啊,個別軟件下載又需要時間。所以Docker出現(xiàn)了。Docker把系統(tǒng),各種需要的應用,還有設置編譯成一個image,然后 run一下就可以了。跟虛擬機的區(qū)別是不需要而外的物理支持,共用的。
1. 部署步驟
1.1 上傳本地scrapy爬蟲代碼除了settings外到git 服務器
1.2 編寫Dockerfile文件,把settings和requirements.txt 也拷貝到image里,一起打包成一個image
Dockerfile內(nèi)容:
FROM ubuntu RUN apt-get update RUN apt-get install -y git RUN apt-get install -y nano RUN apt-get install -y redis-server RUN apt-get -y dist-upgrade RUN apt-get install -y openssh-server RUN apt-get install -y python3.5 python3-pip RUN apt-get install -y zlib1g-dev libffi-dev libssl-dev RUN apt-get install -y libxml2-dev libxslt1-dev RUN mkdir /code WORKDIR /code ADD ./requirements.txt /code/ ADD ./settings.py /code/ RUN mkdir /code/myspider RUN pip3 install -r requirements.txt VOLUME [ "/data" ]
requirements.txt 內(nèi)容:
BeautifulSoup4 scrapy setuptools scrapy_redis redis sqlalchemy pymysql pillow
整個目錄結(jié)構(gòu):
docker build -t fox6419/scrapy:scrapyTag .
fox6419是用戶名,scrapyTag是tag
成功后,執(zhí)行docker images可以在本地看到image
1.3 打包的image 上傳到docker hub中
docker push username/repository:tag
push的命令格式是這樣的,我這邊就是:
docker push fox6419/scrapy:scrapyTag
1.4 在DigitalOcean這種主機商創(chuàng)建帶docker應用的Ubuntu 16.04版本
1.5 登陸docker,拉下1.3的image,然后run起來
docker run -it fox6419/scrapy:scrapyTag /bin/bash
1.6 命令進去后,git clone 1.1中的爬蟲,然后復制images里的settings到爬蟲目錄,然后執(zhí)行scrapy crawl xxx即可
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- windows10系統(tǒng)中安裝python3.x+scrapy教程
- python使用scrapy發(fā)送post請求的坑
- Python爬蟲框架scrapy實現(xiàn)downloader_middleware設置proxy代理功能示例
- Python爬蟲框架scrapy實現(xiàn)的文件下載功能示例
- Python爬蟲框架Scrapy常用命令總結(jié)
- 詳解Python安裝scrapy的正確姿勢
- Scrapy基于selenium結(jié)合爬取淘寶的實例講解
- 利用Anaconda簡單安裝scrapy框架的方法
- 基于scrapy的redis安裝和配置方法
- mac下給python3安裝requests庫和scrapy庫的實例
- 利用scrapy將爬到的數(shù)據(jù)保存到mysql(防止重復)
- Centos7 Python3下安裝scrapy的詳細步驟
- Windows下安裝Scrapy
相關文章
docker利用WebHook實現(xiàn)持續(xù)集成
這篇文章主要介紹了docker利用WebHook實現(xiàn)持續(xù)集成的相關知識,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2018-01-01基于CentOS8系統(tǒng)使用Docker搭建Gitlab的詳細教程
這篇文章主要介紹了基于CentOS8系統(tǒng)使用Docker搭建Gitlab教程,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10