Docker简介
Docker叫做应用容器引擎,以往我们使用的虚拟机将所有的资源都整理下来供我们使用,但是人们渐渐发现这样的方法实在是太消耗资源了,有很多无用的外设和中断是我们可以忽略的。因此研究出了轻量级的应用容器引擎:Docker,只提供我们需要的那部分资源,达到和虚拟机相同的效果(封闭环境单独使用)
Docker适用于:Web应用自动化打包发布,自动化测试和集成发布,服务型环境中部署和调整数据库或其他后台应用,PaaS环境。
关于PaaS再多两句。我们知道IaaS PaaS SaaS
IaaS Infrastructure as a Service
将IT基础设施作为一种服务通过网络对外提供,根据用户的资源使用量或者占用量进行计费。
用户可以操作系统存储内容安装程序,但是不能操作底层基础设施:交换机,服务器等
PaaS Platform 平台即服务
使用云服务提供商提供的编程语言,库,服务or开发工具。感觉有点儿像飞桨这类的。
SaaS Software 软件即服务
直接提供应用让客户使用,不需要自己开发。
Docker功能
回归正题,Docker可以在CICD的持续交付工作流中做到:
开发人员在本地编写代码,使用Docker容器和同事共享工作
开发人员使用Docker将应用程序推送到测试环境中,并执行自动或者手动测试
发现错误时可以在开发环境中进行修复,然后放到测试环境中进行验证
测试完成后,将修补程序推送给生产环境。
Docker架构
Docker包括三个基本概念:镜像Image:一个root文件系统,最小系统的概念
容器Container:容器是镜像的实例
仓库:代码控制中心,用来保存镜像
Docker使用CS架构模式,使用远程api对Docker进行创建和管理(其实就是容器当服务器,本地主机发请求)
Docker配置
1、首先是在实验室Win8上面装,需要在菜鸟教程里面用阿里云的镜像才行。
2、然后勾选的时候VirtualBox要装上
3、自动将路径加入Path,这时候已经可以在cmd里用docker命令了,但是出现了常见的未启动问题。检查VB有没有运行default的Linux环境。
4、然后不要用cmd了,用docker提供的docker quickstart来输入docker指令。
5、load的时候注意自己C盘大小,如果不够用了很烦的
6、映射本地文件夹时win7、8的docker无法映射除了User以外的其他文件夹,不能读写
7、localhost:8888可能进不去暂不知道为什么。
然后就可以用jupyter notebook和对方提供的环境啦