1、介绍
额,介绍我就拉一段百科吧。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker是基于Go语言实现的,诞生于13年,Docker相对于虚拟机是更为轻量级的解决方案,在开发和运维过程中有很大的优势:
1、更快速的交付和部署。
2、更搞笑的资源利用。
3、更轻松的迁移和扩展。
4、更简单的更新管理。
2、 核心概念
Docker有三大核心概念:镜像(Image)、容器(Container)、仓库(Repository)。
2.1、镜像
镜像类似于虚拟机镜像,可以理解为一个面向docker引擎的只读模板,包含了系统文件。
镜像可是是Centos系统的,也可以是Ubuntu或者其他系统的(暂时不支持Windows),然后在其只上可以安装应用程序。
镜像是创建容器的基础。通过版本管理和增量的文件系统,docker可以简单的创建和更新现有的镜像,也可以从网上下载做好的镜像直接使用。
2.2、容器
容器相当于一个轻量级的沙箱,用来运行和隔离应用。
容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,这些容器是相互隔离,互不可见的。
镜像自身是只读的,容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身将保持不变。
2.3、仓库
仓库类似于代码仓库,是docker集中存放镜像文件的场所。
docker仓库和注册服务器是不一样的,注册服务器是存放仓库的地方,可以包含很多个仓库,每个仓库集中存放某一类镜像,往往包含多个镜像文件,通过不同的标签(TAG)区分。
不过很多时候都不严格的将注册服务器和仓库混为一谈。
仓库分公共仓库和私有仓库,公共仓库是存放的共享的镜像文件,目前最大的是Docker Hub。用户可以创建私有仓库在自己的局域网中。
3、安装Docker
Docker支持主流的操作系统,主要包括Linux系列系统(Ubuntu、Centos等)、MacOS系统、Windows系统等,不过只有在Linux系列平台上是原生支持的,所以体验也最好。
3.1、Ubuntu
14.04及以上版本上的安装
Ubuntu 14.04 版本官方软件源中已经自带了Docker包,可以直接安装(如果用户不为Root,可能需要sudo命令):
此处使用Ubuntu 14.04 自带的安装包安装,通常安装的Docker不是最新的版本。
也可以使用下面的方法从官网安装最新的版本。不过需要先安装apt-transport-https,并添加docker官方源:
然后 如果需要更新Docker可以执行如下命令:
ubuntu 更低的版本安装
需要先升级内核并重启才能安装:
3.2、centos 安装
Docker支持Centos 6 及更高版本。
Centos 6 可以使用EPEL库安装:
对于Centos 7 ,源中已经内置了Docker,可以直接yum安装:
3.3、windows和MacOS
windows安装需要先安装虚拟机,其他的就不多说了。
MacOS需要先安装Boot2Docker。
4、总结
Docker有三大核心概念:镜像、容器和仓库。
通过这三大核心概念可以构建高效的工作流程。