最近学习云计算技术接触到了docker,发现这简直是个神器!!!
1.什么是docker??
docker是世界领先的软件容器化平台;docker支持跨平台,你可以在Mac上,Linux上,windows上使用docker。
2.docker的思想。
(1)集装箱:程序运行不会缺东西,每个镜像包含了它运行所需的所有东西。
(2)标准化:1.运输方式标准化。2.存储方式的标准化。3.API接口标准化。
(3)隔离:docker相当于轻量的虚拟机,使用iosc轻量级的容器虚拟化技术,隔离了进程和资源;使用namespace等技术隔离进程组使用的资源如CPUi、io等。
3.docker解决什么问题??
(1)运行环境不一致。
(2)container之间相互影响的问题。
(3)服务器快速扩张弹性伸缩。
4.docker的核心技术
Docker 镜像-build
Docker 镜像是 Docker 容器运行时的只读模板,每一个镜像由一系列的层 (layers) 组成。Docker 使用 UnionFS 来将这些层联合到单独的镜像中。UnionFS 允许独立文件系统中的文件和文件夹(称之为分支)被透明覆盖,形成一个单独连贯的文件系统。正因为有了这些层的存在,Docker 是如此的轻量。当你改变了一个 Docker 镜像,比如升级到某个程序到新的版本,一个新的层会被创建。因此,不用替换整个原先的镜像或者重新建立(在使用虚拟机的时候你可能会这么做),只是一个新 的层被添加或升级了。现在你不用重新发布整个镜像,只需要升级,层使得分发 Docker 镜像变得简单和快速。
Docker 仓库-ship
Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。同样的,Docker 仓库也有公有和私有的概念。公有的 Docker 仓库名字是 Docker Hub。Docker Hub 提供了庞大的镜像集合供使用。这些镜像可以是自己创建,或者在别人的镜像基础上创建。Docker 仓库是 Docker 的分发部分。
Docker 容器-run
Docker 容器和文件夹很类似,一个Docker容器包含了所有的某个应用运行所需要的环境。每一个 Docker 容器都是从 Docker 镜像创建的。Docker 容器可以运行、开始、停止、移动和删除。每一个 Docker 容器都是独立和安全的应用平台,Docker 容器是 Docker 的运行部分。