Docker介绍

本文部分摘自gitbook【docker-从入门到实践】,链接:https://www.gitbook.com/book/yeasy/docker_practice/details
1. docker使用Go语言进行开发。对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离进程,因此也称其为容器。
2. docker与传统虚拟化方式不同的是,传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整的操作系统 ,再在系统上运行所需的应用进程;docker的进程直接运行在宿内核,容器没有自己的内核,也没有进行硬件虚拟。更轻、更快、更有效。一致的运行环境。持续交付和部署。
3. 操作系统分为内核和用户空间。对于Linux,内核启动后,会挂载root文件系统为其提供用户空间支持。而docker镜像(image)就相当于一个root文件系统。比如官方镜像ubuntu14.04就包含了一套最小系统的root文件系统。
4. 镜像与容器的关系,就像面向对象程序设计的类和实例一样。镜像是静态的定义,容器是镜像运行的实体。容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停。
5. 容器的实质是进程,与传统进程不同,容器进程内部拥有自己独立的命名空间。因此容器可以拥有自己的root文件系统、自己的网络配置、自己的进程空间,自己的用户ID空间。容器内的进程是运行在一个隔离的环境里,使用起来就好像在一个独立于宿主的系统下操作一样。
6. 镜像构建完成后,可以很容易在当前宿主机上运行。如果需要在其它服务器上使用这个镜像,就需要一个仓库进行集中存储、分发镜像的服务。这就是Docker Registry

你可能感兴趣的:(操作系统)