Docker技术原理介绍
前言
玩docker有阵子,随着使用的频繁,学习的深入,愈发有了不不少的困惑,于是又回过头复习这些理论知识。还是那句话,温故而知新,每一次阅读都会有不一样的收获。
简介
Docker就是虚拟化的一种轻量级替代技术。Docker的容器技术不依赖任何语言、框架或系统,可以将App变成一种 标准化的、可移植的、自管理的组件,并脱离服务器硬件在任何主流系统中开发、调试和运行
简单的说就是,在 Linux 系统上迅速创建一个容器(类似虚拟机)并在容器上部署和运行应用程序,并通过配置文件 可以轻松实现应用程序的自动化安装、部署和升级,非常方便。因为使用了容器,所以可以很方便的把生产环境和开 发环境分开,互不影响,这是 docker 最普遍的一个玩法。
Docker相关的核心技术
cgroups
Linux系统中经常有个需求就是希望能限制某个或者某些进程的分配资源。于是就出现了cgroups的概念, cgroup就是controller group ,在这个group中,有分配好的特定比例的cpu时间,IO时间,可用内存大小等。 cgroups是将任意进程进行分组化管理的Linux内核功能。最初由google的工程师提出,后来被整合进Linux内 核中。
cgroups中的 重要概念是“