作者:张永利
如今在云计算时代,虚拟化技术无疑是整座信息大厦最核心的。
虚拟化既可以通过硬件模拟来实现,也能通过操作系统来实现。而近些年出现的容器虚拟化方案,更是充分利用了操作系统本身已有的机制和特性,轻量级虚拟化。
Docker毫无疑问就是其中的佼佼者。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
举个简单例子,例如运营一个网站,传统做法要先安装Linux,在安装Apache服务器,MySql数据库,PHP以及他们所依赖的环境。之后还需要进行配置(包括创建用户,配置参数等)。大量操作后,进行功能性测试,如果出现了问题,还需要进行代码查看等等。这些很繁琐无趣的体力活,极大的就降低了工作效率。
而Docker,提供了一种聪明的方法,通过容器打包应用,意味着只要迁移到新的服务器上启动所需要的容器即可。这无意是大大节约了宝贵时间,降低部署过程中的风险。
其实容器不是一个全新的概念,由于种种原因,很多容器技术没集成到linux内核中。
传统虚拟机 | Docker | |
---|---|---|
硬盘使用 | 一般为GB | 一般为MB |
硬件使用 | 模拟硬件行为 | 最大程度上使用硬件资源 |
性能 | 弱于 | 接近原生 |
启动速度 | 分钟级 | 秒级 |
隔离情况 | 物理机隔离、完全隔离 | 容器间隔离、安全隔离 |
系统支持量 | 一般几十个 | 单机支持上千个容器 |
介绍了那么多好处,下来我们开始进行安装。。
Docker官方要求Linux内核不低于3.1,可使用如下命令查看当前linux内核。
root@ubuntu:~# uname -a
Linux ubuntu 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
PS:如果版本低于官方要求,请先升级内核,升级内核这里就不展开讲了。
Docker有2种安装方法:
1.安装Ubuntu维护Docker版本(优点:安装方便。缺点版本较低)
2.安装Docker维护版本(优点:版本最新,缺点:安装略复杂)(最常用)
$ sudo apt-get update
$ sudo apt-get install -y docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
$ sudo docer version
以上使用Ubuntu14.04系统默认自带的docker.io安装包安装Docker 这样安装的Docker版本比较旧,所以官方推荐我们使用Docker官方源安装最新版本,也就是第二种方法。
$ sudo apt-get install–y apt-transport-https ca-certificates
$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
根据Ubuntu版本不同,选择不同的源
On Ubuntu Precise 12.04 (LTS)
deb https://apt.dockerproject.org/repo ubuntu-precise main
On Ubuntu Trusty 14.04 (LTS)
deb https://apt.dockerproject.org/repo ubuntu-trusty main
Ubuntu Wily 15.10
deb https://apt.dockerproject.org/repo ubuntu-wily main
Ubuntu Xenial 16.04 (LTS)
deb https://apt.dockerproject.org/repo ubuntu-xenial main
由于我这边使用的14.04版本 故采用deb https://apt.dockerproject.org/repo ubuntu-trusty main
sudo vi /etc/apt/sources.list.d/docker.list
添加deb https://apt.dockerproject.org/repo ubuntu-trusty main 保存退出。
使用cat命令确认新增内容。
$ cat /etc/apt/sources.list.d/docker.list
deb https://apt.dockerproject.org/repo ubuntu-trusty main
继续执行以下命令更新
$ apt-get update
$ apt-get purge lxc-docker*
$ apt-cache policy docker-engine
列表显示最新的Docker版本为1.11.2-0~trusty
$ apt-get install -y docker-engine=1.11.2-0~trusty
$ sudo docer version
好了,这次就到这里,下次,我将继续带领大家深入Docker