工作中会用到docker,于是这两天都在学习相关内容。
docker是一个开源的应用容器引擎,刚开始看到这个定义完全摸不清头脑。其实从头到尾走一遍流程就清晰了。镜像和容器的关系就像类与对象一样。容器依赖镜像创建,一个容器类似于一个虚拟机,在上面可以做各种操作,每个容器是相互隔绝的环境。
主要使用docker来部署分布式爬虫,所以接触的也是这方面。接下来说一下从配置一个容器到commit为一个镜像的具体过程。
环境是centOS7的虚拟机.
首先yum install docker,安装docker。
打开docker服务:service docker start
下载镜像:docker pull ubuntu
创建一个容器,以交互模式运行:docker run ubuntu /bin/bash
进入容器后就可以做想做的更改了,我主要是配置爬虫运行的环境。接下来都是在Ubuntu中的操作。
安装python环境:apt-get install python3.7
安装pip:apt-get install python3-pip(这一步实际操作过程中并没有成功,准备继续琢磨)
安装scrapy:apt-get install python3-scrapy
安装selenium:apt-get install python3-selenium
存为镜像:先Ctrl+p+q退出容器(容器仍然在运行),
使用docker ps -a查看容器id,
再使用docker commit container_id [repostory[:tag]]存为镜像
还没弄完就去安装VMware tools了,遇到一个大坑,下班都没解决。而且上面安装的包在进入python环境中不能import!!!端正态度,解决问题,而不是逃避。