docker是什么?
go语言写的一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的操作系统的机器上,也能实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker容器与虚拟机类似,但二者在原理上不同。容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器。 容器更多的用于表示 软件的一个标准化单元。由于容器的标准化,因此它可以无视基础设施的差异,部署到任何一个地方。另外,Docker也为容器提供更强的业界的隔离兼容。
docker特点
一次构建,随处运行:
优势:
更快速的应用交付和部署
更便捷的升级和扩容
更简单的系统运维
更高效的计算资源利用
Docker的架构
一个完整的Docker有以下几个部分组成:
DockerClient客户端:
docker build
docker pull
docker run
Docker Daemon守护进程
Docker管理引擎
Docker Image镜像
可以视为只读的模板
Docker Container容器
- 容器是根据镜像创建的运行实例,可以创建多个。
- 容器可以被启动,开始,重启,停止,删除。
- 每个容器相互隔离,保证安全。
- 容器可以看做一个简易版本的Linux环境(包括root用户权限、进程空间、用户空间和网络空间)和运行在其中的应用程序。
- 容器的定义和镜像几乎一模一样,也是一堆层的同意视角,区别在于容器最上面一层是可读可写的。
Docker Registry仓库
仓库(Repository)是集中存放镜像的场所
仓库(Repository)和仓库注册服务器(Registry)是有区别的,仓库注册服务器上存放了多个仓库,每个仓库中又包含了多个镜像,每个镜像都有不同的tag。
仓库分公开仓库和私有仓库,最大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载,国内的包括阿里云,网易云等。
资料
官网地址:http://www.docker.com
仓库地址: https://hub.docker.com/
docker支持以下的centos安装
centos7 (64-bit),内核3.10及以上
centos6.5及以上(64-bit),内核2.6.32-431或者更高
查看自己的内核命令uname -r
cat /etc/redhat-release