zoukankan      html  css  js  c++  java
  • docker所需的os基础

      linux是可以同时运行多个软件的,这个和docker的功能有些相似,docker的隔离是基于namespace的。

      在一个内核所有进程都共享操作系统定义的资源——主机名、域名、ARP表、路由表、NAT表;文件系统、用户和组、进程编号。以主机名为例,它是由操作系统定义在一块内存空间中的,所以进程A能看到,进程B也能看到(如果有权限甚至可以修改)。Namespace提供了一种隔离技术,可以让每个进程都定义“自己的主机名”。你可以理解为内核为每个进程都提供了一份当前主机名的备份,进程当然可以修改这份数据,但是这个修改只能作用于自己,其他进程感知不到——因为它不再是“全局”的。

      经常有人问是不是所有应用都可以做容器化?理解Namespace就很容易回答这个问题。容器技术本质上还是共享内核,所以任何需要修改内核的应用都不可以被容器化。比如LVS、OpenvSwtich这些需要加载内核模块的应用都没有办法做成容器。

       

    参考文章:http://www.bubuko.com/infodetail-2546385.html

  • 相关阅读:
    Oracle SGA详解
    oracle如何保证读一致性 第一弹
    Make命令完全详解教程
    ProC第三弹
    ProC第一弹
    ProC第二弹
    $(MAKE) , make命令
    转:跟我一起写Makefile (PDF重制版)
    [bzoj1105][POI2007]石头花园SKA
    可并堆学习
  • 原文地址:https://www.cnblogs.com/Robin008/p/13943409.html
Copyright © 2011-2022 走看看