[Python3网络爬虫开发实战] 1.9.1-Docker的安装
Docker是一种容器技术,可以将应用和环境等进行打包,形成一个独立的、类似于iOS的App形式的“应用”。这个应用可以直接被分发到任意一个支持Docker的环境中,通过简单的命令即可启动运行。Docker是一种最流行的容器化实现方案,和虚拟化技术类似,它极大地方便了应用服务的部署;又与虚拟化技术不同,它以一种更轻量的方式实现了应用服务的打包。使用Docker,可以让每个应用彼此相互隔离,在同一台机器上同时运行多个应用,不过它们彼此之间共享同一个操作系统。Docker的优势在于,它可以在更细的粒度上进行资源管理,也比虚拟化技术更加节约资源。
对于爬虫来说,如果我们需要大规模部署爬虫系统的话,用Docker会大大提高效率。工欲善其事,必先利其器。
本节中,我们就来介绍三大平台下Docker的安装方式。
1. 相关链接
- 官方网站:https://www.docker.com
- GitHub:https://github.com/docker
- Docker Hub:https://hub.docker.com
- 官方文档:https://docs.docker.com
- DaoCloud:http://www.daocloud.io
- 中文社区:http://www.docker.org.cn
- 中文教程:http://www.runoob.com/docker/docker-tutorial.html
- 推荐图书:https://yeasy.gitbooks.io/docker_practice
2. Windows下的安装
如果你的系统是Windows 10 64位,那么推荐使用Docker for Windows。此时直接从Docker官方网站下载最新的Docker for Windows 安装包即可:https://docs.docker.com/docker-for-windows/install/。
如果不是Windows 10 64位系统,则可以下载Docker Toolbox:https://docs.docker.com/toolbox/toolbox_install_windows/。
下载后直接双击安装即可,详细过程可以参考文档说明。安装完成后,进入命令行。
运行docker
命令测试:
1
|
docker
|
运行结果如图1-81所示,这就证明Docker安装成功了。
图1-81 运行结果
3. Linux下的安装
详细的分步骤安装说明可以参见官方文档:https://docs.docker.com/engine/installation/linux/ubuntu/。
官方文档中详细说明了不同Linux系统的安装方法,根据文档一步步执行即可安装成功。但是为了使安装更加方便,Docker官方还提供了一键安装脚本。使用它,会使安装更加便捷,不用再去一步步执行命令安装了。
首先是Docker官方提供的安装脚本。相比其他脚本,官方提供的一定更靠谱,安装命令如下:
1
|
curl -sSL https://get.docker.com/ | sh
|
只要执行如上一条命令,等待一会儿Docker便会安装完成,这非常方便。
但是使用官方脚本安装有一个缺点,那就是慢,也可能下载超时,所以为了加快下载速度,我们可以使用国内的镜像来安装,所以这里还有阿里云和DaoCloud的安装脚本。
阿里云的安装脚本:
1
|
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
|
DaoCloud的安装脚本:
1
|
curl -sSL https://get.daocloud.io/docker | sh
|
这两个脚本可以任选其一,速度都非常不错。
等待脚本执行完毕之后,就可以使用Docker相关命令了,如运行测试Hello World镜像:
1
|
docker run hello-world
|
运行结果:
1
2
3
4
5
6
7
|
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
78445dd45222: Pull complete
Digest: sha256:c5515758d4c5e1e838e9cd307f6c6a0d620b5e07e6f927b07d05f6d12a1ac8d7
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
|
如果出现类似上面提示的内容,则证明Docker可以正常使用了。
4. Mac下的安装
Mac平台同样有两种选择:Docker for Mac和Docker Toolbox。
Docker for Mac要求系统为OS X EI Captain 10.11或更新,至少4GB内存。如果你的系统满足此要求,则强烈建议安装Docker for Mac。
这里可以使用Homebrew安装,安装命令如下:
1
|
brew cask install docker
|
另外,也可以手动下载安装包(下载地址为:https://download.docker.com/mac/stable/Docker.dmg)安装。
下载完成后,直接双击安装包,然后将程序拖动到应用程序中即可。
点击程序图标运行Docker,会发现在菜单栏中出现了Docker的图标,如图1-82中的第三个小鲸鱼图标。
图1-82 菜单栏
点击小鲸鱼图标,展开菜单之后,再点击Start按钮即可启动Docker。启动成功后,便会提示Docker is running,如图1-83所示。
图1-83 运行页面
随后,我们就可以在命令行下使用Docker命令了。
可以使用如下命令测试运行:
1
|
sudo docker run hello-world
|
运行结果如图1-84所示,这就证明Docker已经成功安装了。
图1-84 运行结果
如果系统不满足要求,可以下载Docker Toolbox,其安装说明为:https://docs.docker.com/toolbox/overview/。
关于Docker for Mac和Docker Toolbox的区别,可以参见:https://docs.docker.com/docker-for-mac/docker-toolbox/。
5. 镜像加速
安装好Docker之后,在运行测试命令时,我们会发现它首先会下载一个Hello World的镜像,然后将其运行。但是这里的下载速度有时候会非常慢,这是因为它默认还是从国外的Docker Hub下载的。因此,为了提高镜像的下载速度,我们还可以使用国内镜像来加速下载,于是就有了Docker加速器一说。
推荐的Docker加速器有DaoCloud(详见https://www.daocloud.io/mirror)和阿里云(详见https://cr.console.aliyun.com/#/accelerator)。
不同平台的镜像加速方法配置可以参考DaoCloud的官方文档:http://guide.daocloud.io/dcs/daocloud-9153151.html。
配置完成之后,可以发现镜像的下载速度会快非常多。
[Python3网络爬虫开发实战] 1.9.1-Docker的安装的更多相关文章
- [Python3网络爬虫开发实战] 1.3.2-Beautiful Soup的安装
Beautiful Soup是Python的一个HTML或XML的解析库,我们可以用它来方便地从网页中提取数据.它拥有强大的API和多样的解析方式,本节就来了解下它的安装方式. 1. 相关链接 官方文 ...
- [Python3网络爬虫开发实战] 1.9.4-Scrapyd API的安装
安装好了Scrapyd之后,我们可以直接请求它提供的API来获取当前主机的Scrapy任务运行状况.比如,某台主机的IP为192.168.1.1,则可以直接运行如下命令获取当前主机的所有Scrapy项 ...
- 崔庆才Python3网络爬虫开发实战电子版书籍分享
资料下载地址: 链接:https://pan.baidu.com/s/1WV-_XHZvYIedsC1GJ1hOtw 提取码:4o94 <崔庆才Python3网络爬虫开发实战>高清中文版P ...
- 《Python3 网络爬虫开发实战》开发环境配置过程中踩过的坑
<Python3 网络爬虫开发实战>学习资料:https://www.cnblogs.com/waiwai14/p/11698175.html 如何从墙内下载Android Studio: ...
- 《Python3 网络爬虫开发实战》学习资料
<Python3 网络爬虫开发实战> 学习资料 百度网盘:https://pan.baidu.com/s/1PisddjC9e60TXlCFMgVjrQ
- Python3网络爬虫开发实战PDF高清完整版免费下载|百度云盘
百度云盘:Python3网络爬虫开发实战高清完整版免费下载 提取码:d03u 内容简介 本书介绍了如何利用Python 3开发网络爬虫,书中首先介绍了环境配置和基础知识,然后讨论了urllib.req ...
- 转:【Python3网络爬虫开发实战】 requests基本用法
1. 准备工作 在开始之前,请确保已经正确安装好了requests库.如果没有安装,可以参考1.2.1节安装. 2. 实例引入 urllib库中的urlopen()方法实际上是以GET方式请求网页,而 ...
- 《Python3网络爬虫开发实战》PDF+源代码+《精通Python爬虫框架Scrapy》中英文PDF源代码
下载:https://pan.baidu.com/s/1oejHek3Vmu0ZYvp4w9ZLsw <Python 3网络爬虫开发实战>中文PDF+源代码 下载:https://pan. ...
- 《Python3网络爬虫开发实战》
推荐:★ ★ ★ ★ ★ 第1章 开发环境配置 第2章 网页基础知识 第3章 网络爬虫基础 第4章 基本库的使用 第5章 解析库的使用 第6章 数据存储 第7章 Ajax数据爬取 第8章 动态渲染页面 ...
- [Python3网络爬虫开发实战] 3.1.4-分析Robots协议
利用urllib的robotparser模块,我们可以实现网站Robots协议的分析.本节中,我们来简单了解一下该模块的用法. 1. Robots协议 Robots协议也称作爬虫协议.机器人协议,它的 ...
随机推荐
- 机器学习--DIY笔记与感悟--①K-临近算法
##“计算机出身要紧跟潮流” 机器学习作为如今发展的趋势需要被我们所掌握.而今我也需要开始learn机器学习,并将之后的所作所想记录在此. 今天我开始第一课--K临近算法. 一.k-临近的基础概念理解 ...
- 洛谷 P2762 太空飞行计划问题 【最大权闭合子图+最小割】
--一道难在读入的题. 最后解决方案直接getline一行然后是把读优拆掉放进函数,虽然很丑但是过了. 然后就是裸的最大权闭合子图了,把仪器当成负权点向t连流量为其价格的边,s向实验连流量为实验报酬的 ...
- Logstash读取文本信息并写入到ES
Logstash读取文本信息并写入到ES 前提是ELK安装没问题 进入到logstash安装目录下的bin目录(我的logstash安装目录:/usr/local/) [root@es1 bin]# ...
- 进击的Python【第十四章】:Web前端基础之Javascript
进击的Python[第十四章]:Web前端基础之Javascript 一.javascript是什么 JavaScript 是一种轻量级的编程语言. JavaScript 是可插入 HTML 页面的编 ...
- [POI2012]Vouchers
Description 考虑正整数集合,现在有n组人依次来取数,假设第i组来了x人,他们每个取的数一定是x的倍数,并且是还剩下的最小的x个. 正整数中有m个数被标成了幸运数,问有哪些人取到了幸运数. ...
- _bzoj1013 [JSOI2008]球形空间产生器sphere【高斯消元】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1013 保存高斯消元模版. ps,这一题的英文名字是ヨスガノソラ的开发商~^_^ #inclu ...
- 自定义View(12)绘制.9图片
代码如下: // 绘制.9图片 void draw9Path(Canvas canvas){ //创建一个ninePatch的对象实例,第一个参数是bitmap.第二个参数是byte[],这里其实要求 ...
- Android偏好设置(1)概述和Preferences简介
1.Overview Instead of using View objects to build the user interface, settings are built using vario ...
- listBox 搜索左右移动
<td align="left" width="50%"> 查询:<asp:TextBox ID="SacffSearch" ...
- html5改良的input元素的种类
1.url类型.email类型.date类型.time类型.datetime类型.datetime-local类型. month类型.week类型.number类型.range类型.search类型. ...