Fork me on GitHub

走近Docker

  • 一个容器实际上就是运行在宿主机上的一个进程,这个进程以及子进程会认为自己运行在一个独立的世界里。
  • Docker相对于其他虚拟化技术的优势在于:创建、删除容器速度快,容器运行占用开销非常小。而相对于其他容器技术,Docker让容器的管理更加方便,不需掌握高深技术。
  • Docker很可能改变传统的软件“交付”方式和“运行”方式。
  • Docker组成(C/S架构):
    • Docker Client
    • Docker Daemon
    • Docker Image (构建打包阶段)
      • 容器的基石,类似容器的源代码
      • 层叠的只读文件系统
      • 联合加载 union mount
    • Docker Container (启动运行阶段)
      • 通过镜像启动
      • 写时复制 copy on write。容器镜像栈最上层是读写层,其余下层都是只读层。当容器要更改数据时,会将只读层的数据复制到读写层,而只读层的数据则被隐藏。
    • Docker Registry(仓库)
      • 公有 Docker Hub
      • 私有
  • image和container的关系可以理解为“类”和“实例”的关系。而且在一个机器环境里跑的container还可以是基于不同的image。你可以随时把一个container打包成一个image作再次的部署。其次,你在一个container里作的修改也可以更新到基于同一image的其它container里。因为可以只更新修改过的部分,类似于版本控制下的更新。事实上它也有一个类似版本管理仓库(Repositry)的东西,有docker.io提供的官方仓库(index.docker.io,相当于 github),也可以自建(叫docker-registry)。
posted @ 2015-02-07 20:29  落崖惊风  阅读(190)  评论(0编辑  收藏  举报