Python分布式爬虫-必须掌握的Docker基础!

      没看第一篇文章的朋友,点这里Python爬虫|不会分布式爬虫?带你一步一步写!

      大家都知道在性能方面,Linux系统是远远优于Windows系统的,所以我们整个分布式爬虫的部署也是在Linux的子系统centos上,所以大家都要有一定的Linux基础。

      因为我们使用到Docker技术,所以第一步就是要在我们的服务器上安装上Docker:

安装Docker的指令:

yum-y install docker

        大家静静等待一下就可以安装成功了

       安装成功之后,我给大家简单介绍一下Docker的相关基础,主要有Docker的启动、Docker镜像搜索、Docker镜像下载、Docker容器的创建、Docker容器的查看、Docker容器的命名、Docker容器的启动这几个方面。

      对于我们只需要写分布式爬虫,学习这几个基础就差不多了,总体来说并不困难,也就那几句Linux命令。

Docker的启动和停止

Docker的启动:

systemctl  start docker

Docker的停止:

systemctl  stop docker


我们可以通过docker -v来验证我们是否启用成功

Docker的镜像搜索和下载

 首先,我来给大家简单介绍镜像这个东西,镜像其实有点类似于压缩包,它也是把多个文件压缩到另一个文件当中,只不过后缀名不是我们熟知的zip,rar。很多人可能听说过windows镜像,其实就是一个意思。

       我们使用Docker技术来进行虚拟化容器,我们就得向每个容器里面安装镜像,例如可以安装Ubuntu镜像,Linux镜像,centos镜像等等。镜像我们是不能去改变它本身的内容,但是我们能向容器中安装不同的镜像。

      Docker的虚拟化容器技术就会给我们带来轻部署、省成本、部署迁移方便的各种优势。

      简单介绍了一下镜像,接下来我们正式来学一学镜像搜索

镜像搜索:

docker  search 关键字

这里说明一下这个关键字,比如我们想搜索python有关的镜像,我们就可以

docker search python

如果我们想搜索ubantu有关的镜像,我们就可以:

docker search ubantu

搜索之后,我们就会看到有很多的搜索结果出来了

我们要怎么去下载这些镜像呢?

docker pull NAME

这个NAME就是在我们搜索之后可以看见的,例如我想下载第一个ubantu:

docker pull docker.io/ubuntu

我们整个教程也是下载的第一个Ubuntu。

下载完之后,我们如何查看我们已经下载好的镜像?

docker images

上图就可以看到我们已经下载的Ubuntu镜像,里面的TAG表示的是我们下载的版本。

Docker容器的创建和查看


我们把镜像下载好了,接下来就可以用镜像来装我们的容器

docker run -tid3556

这里的“3556”就是我们Ubuntu的IMAGE ID的前4位,我们直接通过前4位就可识别到是这个镜像。

创建完容器,我们怎么去查看它?

docker ps -a

Docker进入容器及不停止退出

创建完容器,我们可以进去玩一玩,怎么进呢?

docker attach container id


啥意思呢?大家可以看到上图,里面有一个container id列,我们直接选取其前四位,例如我现在要进入Ubuntu的容器:

docker attach cea2


可以看到我们成功的进入到cea2的容器中,这就相当于另外一台服务器。

当我们进入之后,我们肯定是需要退出的,但是我们这个容器中可能是有爬虫在运行的,那么我们该如何不停止这个容器运行又完美退出呢?我们可以同时按ctrl+P+Q 三个按键来进行不停止退出。

Docker容器的命名


从上图中可以看到最右边,我们容器也是有名字的,但是系统是随机生成的,我们怎样去创建一个自己设定名字的容器?

docke rrun -tid --name javaandpython 3556


运行之后就是上面的效果!

Docker的启动停止的容器

当我们想去启动一个停止的容器时,要怎样操作?

docker start id

这里的id同样是取前四位字母,我这里就不演示了。

根据已有的容器封装成镜像

当我们创建一个容器时,我们会在容器内搭建好整个爬虫运行的环境,但是我们需要创建很多这种容器(子节点),我们不可能每个容器都去搭建一遍,所以接下来教大家如何把我们已经搭建好的环境进行封装成镜像,然后直接使用该镜像去创建容器即可。

docker commit 471c mytest:v1

这里做个简单的解释,471c是已有容器的id,mytest是我们封装成镜像的名称,冒号后面的v1则是镜像的版本名。


显示这个就表明创建成功,我们再去查看一下镜像列表


可以看到列表中多了一个mytest,也就是我们封装的镜像。

Docker网络配置基础

之前给大家介绍过我们整个分布式的难点就是容器之间的通信,上面所写的知识可以帮助我们去创建容器,但是每个容器都是一个独立的个体,我们怎样去使其相互连通呢?

我们首先创建一个子节点容器,名字命名为h1

docker run -tid --name h1 mytest:v1

然后我们再创建一个容器,让这个容器和h1进行通信:

docker run -tid --name h2 --link h1 5953

我们该如何知道他们之间就相互通信了呢?

大家可以看图,我们首先进入h2的容器中,然后输入 cat /etc/hosts

可以看到有 172.18.0.4 是h1的ip地址,我们可以通过ping这个网址来判断是否真正通信成功

可以看到我们通信是成功的!

写了很多,大家一次性可能不能完全消化,但是大家最好收藏起来,忘记哪个命令的时候可以进行查看,如果文章里面有错误,可以私聊我,我会及时改正。

分布式爬虫是一个系列的文章,大家持续关注!

欢迎大家关注笔者的微信公众号:JAVAandPython君

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,928评论 6 509
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,748评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,282评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,065评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,101评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,855评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,521评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,414评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,931评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,053评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,191评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,873评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,529评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,074评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,188评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,491评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,173评论 2 357