Docker入门

来自泡泡学习笔记
跳到导航 跳到搜索

什么是容器?

容器是在主机机器上运行的沙盒进程,与该主机上运行的其他进程隔离开来。这种隔离是利用了内核命名空间和控制组这些在Linux中已经存在很长时间的功能。Docker使得这些能力变得易于使用和接近。总结一下,容器具有以下特点:

  • 是镜像的可运行实例。您可以使用Docker API或CLI创建、启动、停止、移动或删除一个容器。
  • 可以在本地机器、虚拟机器上运行,也可以部署到云端。
  • 具有可移植性(可以在任何操作系统上运行)。
  • 与其他容器隔离,并运行自己的软件、二进制文件、配置等。 如果您熟悉chroot,那么可以将容器视为chroot的扩展版本。文件系统来自于镜像。然而,与使用chroot时不可用的其他隔离相比,容器增加了额外的隔离。

什么是镜像?

运行的容器使用隔离的文件系统。这个隔离的文件系统由镜像提供,而镜像必须包含运行应用程序所需的所有内容-所有依赖项、配置、脚本、二进制文件等。镜像还包含容器的其他配置,例如环境变量、要运行的默认命令和其他元数据。