zoukankan      html  css  js  c++  java
  • docker原理

    1.docker基本原理

    1.1 什么是docker?

    • 1.Docker是使用最广泛的 开源容器引擎
      * 容器:
      1.1)容器是一个操作系统级别下的虚拟化技术,运行一个容器就行运行一个进程一样
      2.2)容器依赖linux内核特性:Namespace(资源隔离)和Cgroups(资源限制)
    • 2.一种操作系统基本的 虚拟化技术
      * 我们使用的VMware虚拟机就是虚拟化技术
      * 一个操作系统下,虚拟出来,其他操作系统的机器
    • 3.一种简单的应用 程序打包工具
    • 4.依赖Linux内核特性: Namespace(资源隔离) 和 Cgroup(资源限制)
      docker run -itd -p 91:80 nginx

    1.2 资源隔离和资源限制

    资源隔离:

      1) Linux Namespaces 机制提供一种资源隔离方案,每个namespace看上去就像一个单独的
      Linux系统。
      2) PID ,IPC(进程通信), Network 等系统资源不再是全局性的,而是属于某个特定的每个namespace看上去就像一个单独的Linux系统
      3)每个namespace下的 资源对于其他namespace 下的资源都是透明, 不可见的 。 
      4)系统中可以同时存在 两个进程号为0,1,2的进程 ,由于 属于不同的namespace ,所以它们之间并不冲突。
      5)而在用户层面上只能看到属于用户自己namespace下的资源,例如使用ps命令只能列出自己namespace下的进程。
      6)这样 每个namespace看上去就像一个单独的Linux系统 。
    

    资源限制:

      1)为了让容器中的进程更加可控, Docker 使用 Linux cgroups 来限制容器中的进程允许使 用的系统资源 。 
      2)可以在启动容器是指定每个容器可以使用的 网络、磁盘、CPU以及内存 等
  • 相关阅读:
    汇编结合vc6的使用
    QT textbroswer textedite Qlist的常用的操作函数
    QT Qdialog的对话框模式以及其关闭
    QT生成的exe在其他电脑打开
    c++实现服务器和多个客户端的实时群聊通信
    c++ 实时通信系统(基础知识TCP/IP篇)
    c++的并发操作(多线程)
    六种Socket I/O模型幽默讲解
    c++字符串的输入
    字符串 与其他数据类型的转换,以及字符创的常用操作
  • 原文地址:https://www.cnblogs.com/wangxiaosai/p/13961650.html
Copyright © 2011-2022 走看看