溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Docker怎么部署Scrapy

發(fā)布時(shí)間:2021-08-21 09:16:31 來源:億速云 閱讀:151 作者:小新 欄目:服務(wù)器

這篇文章主要為大家展示了“Docker怎么部署Scrapy”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Docker怎么部署Scrapy”這篇文章吧。

假設(shè)我們要在10臺(tái)Ubuntu 部署爬蟲如何搞之?用傳統(tǒng)的方法會(huì)吐血的,除非你記錄下來每個(gè)步驟,然后步驟之間的次序還完全一樣,這樣才行。但是這樣還是累啊,個(gè)別軟件下載又需要時(shí)間。所以Docker出現(xiàn)了。Docker把系統(tǒng),各種需要的應(yīng)用,還有設(shè)置編譯成一個(gè)image,然后 run一下就可以了。跟虛擬機(jī)的區(qū)別是不需要而外的物理支持,共用的。

1. 部署步驟

1.1 上傳本地scrapy爬蟲代碼除了settings外到git 服務(wù)器

1.2 編寫Dockerfile文件,把settings和requirements.txt 也拷貝到image里,一起打包成一個(gè)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

整個(gè)目錄結(jié)構(gòu):

Docker怎么部署Scrapy

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這種主機(jī)商創(chuàng)建帶docker應(yīng)用的Ubuntu 16.04版本

1.5 登陸docker,拉下1.3的image,然后run起來

docker run -it fox6419/scrapy:scrapyTag /bin/bash

1.6 命令進(jìn)去后,git clone 1.1中的爬蟲,然后復(fù)制images里的settings到爬蟲目錄,然后執(zhí)行scrapy crawl xxx即可

以上是“Docker怎么部署Scrapy”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)
推薦閱讀:
  1. docker部署svn
  2. 部署Docker

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI