1、前言

进入云计算的时代,各大云提供商AWS,阿里云纷纷推出针对Docker的服务,现在Docker是十分火爆,那么Docker到底是什麽,让我们来体验一下。

2Docker是什麽

Docker是一个开源的应用容器引擎,可以把应用以及依赖包放到一个可移植的容器中,然后发布到任何流行的 Linux 系统上,通过这种方式实现虚拟化。

提到虚拟化,大家应该十分熟悉了,有VMware,Xen,KVM等等很多。那么,Docker和VM有什么不同呢,我们用官网的一张图来说明一下。

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

可以看出,Docker和VM比较,用Docker引擎替代了Hyper-v,没有Gest OS,应用是放到容器里,直接运行在宿主机的OS上。

这样做的好处是,各容器间虽然隔离,但共享系统资源和公用库,剥离了Gest OS这层,系统资源利用率更高。

另外,因为Docker容器的灵活性,在程序的 开发 → 测试 → 发布,整个流程能保证环境的一致性,并大大减少工作量和时间。这也是Docker十分火爆的主要原因。

说到这里,大家可能已经等不及了吧,下面一起来使用一下Docker。

3使用Docker

官方的Docker Hub上有一些共有的镜像,可以直接拿来放到容器里使用,也可以自己创建镜像,保存后供容器使用。今天使用公用的镜像创建一个nginx的容器。

3.1 安装Docker

Docker的安装十分简单,用yum或apt-get可以直接安装。

1
# yum install -y docker

3.2 启动Docker

1
# service docker start

3.3 查看信息

1
# docker info

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

安装到此结束,接下来创建一个nginx的容器。

3.4 查找镜像

在Docker Hub上查找nginx的镜像。

1
# docker search nginx

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

3.5 抓取镜像

我们下载的是官方的nginx镜像。

1
# docker pull nginx

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

3.6 查看镜像

1
# docker images

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

3.7 定镜像创建容器并启动

指定刚才获取的nginx镜像。

1
# docker run -d -p 80:80 --name cn1 nginx

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

解释一下各参数:

-d 放在后台执行

-p 主机端口:容器端口 将容器的端口映射到主机上,目的是可以直接对外提供访问

--name 指定容器名

3.8 查看容器

1
# docker ps

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

在浏览器访问服务器的IP,可以打开nginx的默认页面

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

到此,一个nginx容器已经创建成功。下面介绍一下其他一些命令。

3.9 结束容器

1
# docker kill cn1

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

3.10 查看所有容器

1
# docker ps -a

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

3.11 启动容器

1
# docker start cn1

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

3.12 删除容器

1
# docker rm sad_heisenberg

Docker系列之(一):10分钟玩转Docker(转)-LMLPHP

4、后记

本文只是对Docker一个简单的介绍,其他的用法,以后会陆续介绍,请持续关注本博客。

专注服务器运维十年,欢迎技术上的交流。微信:ee900222 QQ:176539854
http://www.cnblogs.com/ee900222/p/docker_1.html
 
05-11 09:37