Datawhale-Docker学习笔记-0001-简介与安装
什么是Docker
在虚拟机的出现以前,无论是Windows还是Linux,都无法保证在一个服务器上安全稳定的同时运行多个应用。直到VMware的出现,才使得开发人员可以在一个服务器上稳定的同时运行多个应用,避免了每添加一个应用就需要重新购买一台服务器的境况。
但是,即使是VM这样伟大的技术,也带来了很多的不便。
- 虚拟机依赖器特有的OS,这个OS在运行的时候需要在服务器上申请资源,也就会占用额外的CPU,RAM和存储。
- 虚拟机的移植性较差,在不同的虚拟机管理器上的迁移会十分困难
- 虚拟机的启动通常会比较慢
因此在例如Google这样的大公司中,通常会使用容器技术来克服这一缺点。而Docker 则是在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻便、快捷。
Docker与虚拟机的区别
在上图中我们可以清晰看出,虚拟机的工作原理是通过在OS上运行一个虚拟机管理器,管理器通过申请硬件资源,分配给各个虚拟机,来让多个虚拟机之间正常工作。而容器技术则省去了这一步,可以模块化的进行工作。
Docker for Windows
在Windows上安装Docker是需要受到一定限制的。Docker for Windows并不是直接运行在Windows上,它依赖于已经运行的Linux内核环境。
Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的 Linux 主机。因此,Docker 必须部署在 Linux 内核的系统上。
如果其他系统想部署 Docker 就必须安装一个虚拟 Linux 环境。
在低版本的Windows上,我们通常选择轻量的Hyper-V来虚拟Linux环境。但是在最近的Windows更新中,微软将linux内核集成在了系统之中,所以我们可以直接使用Windows自带的WSL来虚拟Linux环境。(这里面有一个坑,是安装WSL后并没有安装Linux环境,我们还需要去Microsoft Store上选择一个Linux的镜像才可以安装)。
然后,我们在直接在Docker上下载Docker for Windows的安装包即可。最后可以通过docker version来判断是否安装成功。
参考文章
- Datawhale Docker教程.
- 《深入浅出Docker》