zoukankan      html  css  js  c++  java
  • Docker: 简要分析内核问题

    Q:接触docker不久,从一个底层问题引发的思考:

    1. Linux宿主机能否运行不同Linux发行版本的image?
    2. Linux宿主机能否运行不同Linux内核版本的image?

    A:

    1. 可以的. 只要满足条件: CPU架构一致内核版本兼容 即可。
    2. 不一定. 一般的上层软件没有问题,如果是偏嵌入式底层的软件,可能会因为内核版本不一致而导致运行出问题。

    以下是知识点记录:

    区分Linux内核与Linux发行版

    • Linux内核是Linux操作系统的核心, 负责硬件管理, 比如管理内存、管理磁盘(文件系统)、管理CPU(进程)等等..
    • Linux发行版是在Linux内核的基础上添加了一些工具软件,比如图形界面、函数库、软件包管理系统等等..

    Docker的技术本质 -- "内核的引擎"

    基于Linux内核的技术,依赖操作系统内核的引擎,根据操作系统来部署。

    它主要用到了两个内核模块:

    • Namespace: 用于容器的隔离, 例如PID Namespace使得容器中的进程无法感知宿主机以及其他容器中的进程。
    • Cgroups: 用于容器的资源控制, 比如限制容器所使用的内存大小或者CPU个数。

    由此引出image使用界限,解答笔记开头描述的问题:

    • 不同操作系统族的镜像不能共用,Docker镜像是操作系统族相关的。
    • 不同CPU架构的image不能共用,如X86和ARM的镜像不能共用。
  • 相关阅读:
    cookie和session学习笔记
    Listener和Filter学习笔记
    [转载]mysql root密码忘了怎么办
    [转载]oracle连不上的各种现象
    Oauth入门学习
    XML学习笔录
    共享内存
    守护进程
    Linux系统调用与文件I/O(一)
    我的第一篇博客
  • 原文地址:https://www.cnblogs.com/kumata/p/14108646.html
Copyright © 2011-2022 走看看