docker是什么
-
为什么会有docker出现?
一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发和运维之间的协作我们需要关心很多东西。这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本的环境的兼容,对运维人员都是考验。
docker之所以发展如此迅速,也是因为它对此给出了一个标准化的解决方案。
环境配置如此麻烦,换一台机器,就要重来一次,费力费时。很多人想到,能不能从根本上解决问题,软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来。
docker打破过去【程序即应用】的观念。透过镜像(images)将作业系统核心除外,运作应用程序所需的系统环境,由下而上打包,达到应用程序跨平台间的无缝接轨运作。
-
docker能干嘛?
虚拟机是带环境安装的一种解决方案。它可以在一种操作系统里面运行另一种操作系统。但是它的缺点是占用资源多、冗余步骤多、启动慢。
由于虚拟机的这些缺点,Linux发展出了另一种虚拟化技术:Linux容器。Linux容器并不是模拟一个完整的操作系统,而是对进程进行隔离。有了容器,就可以将软件运行所需的所有资源打包到一个隔离的容器中。
容器直接运行在宿主的内核上,容器内没有自己的内核,而且也没有进行硬件虚拟,因此容器比传统虚拟机更加轻便。
docker安装
1、前提条件
使用uname命令打印当前系统的相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)
uname -r
查看已安装的CentOS版本信息
cat /etc/redhat-release
2、docker的基本组成
镜像(image):可以理解为模板
容器(container):用镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。可以把容器看成是一个简易版的Linux环境。
仓库(Repository):仓库是集中存放镜像文件的地方。最大的公开仓库是Docker Hub(http://hub.docker.com),存放了数量庞大的镜像供用户下载。国内的公开仓库包括阿里云、网易云等。
3、安装
CentOS6:
yum install -y epel-release
yum install -y docker-io
安装后的配置文件:/etc/sysconfig/docker
启动docker后台服务:service docker start
docker version验证
CentOS7:
https://www.cnblogs.com/yufeng218/p/8370670.html
4、阿里云镜像加速配置
在阿里云的镜像服务中可以找到
5、运行测试
docker run hello-world
docker运行底层原理
1、docker是如何工作的
docker是一个Client-Server结构的容器,docker守护进程运行在主机上,然后通过Socket连接从客户端访问,守护进程从客户端接收命令并管理运行在主机上的容器。
2、docker为什么比vm快
不需要额外的虚拟硬件资源,也不需要重新安装操作系统。