docker学习笔记-基本概念

一、容器与虚拟机

两者都能提供一个虚拟的、相对独立的计算环境,实现对软硬件资源的管理和配置。

容器更轻量,安装更容易,配置更容易,需要的资源更少,

二、docker是什么

docker是容器技术的一种实现。其中最重要的三个概念是:

  • 镜像——环境配置,通过dockfile创建。

  • 容器——运行起来的镜像

  • 仓库——集中存放镜像,供下载交流

三、docker为什么可以搭建不同环境如ubuntu、centos等

首先需要区分 Linux 内核与 Linux 发行版

  • Linux 内核是 Linux 操作系统的核心, 负责硬件管理, 比如管理内存、管理磁盘(文件系统)、管理 CPU(进程)等等 ...

  • Linux 发行版是在 Linux 内核的基础上添加了一些工具软件,比如图形界面、函数库、软件包管理系统等等 ...

CentOS 与 Ubuntu 是不同的 Linux 发行版, 它们都是基于 Linux 内核, 只是添加的工具软件不同。比如, 他们的软件包管理系统不同, CentOS 使用 yum 命令安装软件, 而 Ubuntu 使用 apt-get 命令安装软件。

因此 CentOS 与 Ubuntu 的内核是相同的(版本可能不同),只是所安装的软件不同,即文件系统不同。

扫描二维码关注公众号,回复: 15344684 查看本文章

Docker 容器技术是基于 Linux 内核实现的, 它主要用到了两个内核模块:

  • Namespace: 用于容器的隔离,例如 PID Namespace 使得容器中的进程无法感知宿主机以及其他容器中的进程。

  • Cgroups:用于容器的资源控制,比如限制容器所使用的内存大小或者 CPU 个数。

在 CentOS 上运行基于 Ubuntu 镜像的容器时,容器使用了 CentOS 主机的内核以及 Ubuntu 镜像,Ubuntu 镜像中安装了 Ubuntu 的各种软件(apt-get)。

docker是进程级的隔离,虽然容器内看不到其它容器,宿主系统可以看到容器运行的进程。

docker主要隔离几个方面:

  • 进程号的隔离——docker中运行的进程自己识别的进程号被改变

  • 文件系统隔离——docker创建一个虚拟的文件系统,挂载的原理?

  • 网络资源的隔离——容器有自己的ip地址等

猜你喜欢

转载自blog.csdn.net/reverie_2007/article/details/128680143