您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Docker怎么部署Scrapy”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Docker怎么部署Scrapy”這篇文章吧。
假設我們要在10臺Ubuntu 部署爬蟲如何搞之?用傳統的方法會吐血的,除非你記錄下來每個步驟,然后步驟之間的次序還完全一樣,這樣才行。但是這樣還是累啊,個別軟件下載又需要時間。所以Docker出現了。Docker把系統,各種需要的應用,還有設置編譯成一個image,然后 run一下就可以了。跟虛擬機的區別是不需要而外的物理支持,共用的。
1. 部署步驟
1.1 上傳本地scrapy爬蟲代碼除了settings外到git 服務器
1.2 編寫Dockerfile文件,把settings和requirements.txt 也拷貝到image里,一起打包成一個image
Dockerfile內容:
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 內容:
BeautifulSoup4 scrapy setuptools scrapy_redis redis sqlalchemy pymysql pillow
整個目錄結構:
docker build -t fox6419/scrapy:scrapyTag .
fox6419是用戶名,scrapyTag是tag
成功后,執行docker images可以在本地看到image
1.3 打包的image 上傳到docker hub中
docker push username/repository:tag
push的命令格式是這樣的,我這邊就是:
docker push fox6419/scrapy:scrapyTag
1.4 在DigitalOcean這種主機商創建帶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到爬蟲目錄,然后執行scrapy crawl xxx即可
以上是“Docker怎么部署Scrapy”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。