docker的典型应用场景

docker是lxc的增强版,不是替代版,其底层也是用lxc实现的

1. 多版本混合部署

一台服务器上部署多个应用或者一个应用的多个版本非常常见。

文件路径,配置信息,端口冲突不可避免

docker的每个容器有自己的文件系统,并通过端口映射解决端口冲突的问题

2.升级回滚

升级通常还有依赖项的版本变更,如果升级失败,会回滚,

docker将新版本放到新容器,就版本的旧容器停掉,直接上新容器,秒级操作完成升级,如果有问题,再秒级操作将版本回滚

3.多租户资源隔离

不同的租户对资源的需求不一样,目前主要采用vm的方式实现,成本高,密度低

docker容器充分利用cgroup技术和linux内核的namespaces提供资源隔离功能。 

注:CGroup 是 Control Groups 的缩写,是 Linux 内核提供的一种可以限制、记录、隔离进程组 (process groups) 所使用的物力资源 (如 cpu memory i/o 等等) 的机制,CGroups 也是 LXC 为实现虚拟化所使用的资源管理手段。

4.内部开发环境

开发测试环境一般负载较低,大量的系统资源都被浪费在虚拟机本身的进程上了。

docker容器没有任何CPU和内存上的额外开销,很适合用来提供公司内部的开发测试环境。 

 

版权声明:本文为jackie2016原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/jackie2016/p/5647447.html