Docker 基本概述
Docker 是一个开源的应用容器引擎,它让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux 或 Windows 操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker 官网:https://www.docker.com
Docker 中文官网:https://www.docker-cn.com
Docker 有助于更快地交付应用,它可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。使用 Docker 可更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。
Docker 中的隔离机制是如何实现的?
Docker 主要借助 Linux 内核技术 Namespace 来实现隔离。Namespace 是 Linux 内核的一种功能,它能够将进程及其相关的资源(如文件系统、网络等)隔离在一个独立的、互不干扰的环境中,使得每个进程都有其独立的视角。
Namespace 应用方面
PID命名空间
:这是隔离进程的关键,它使得每个容器都有其独立的进程空间,无法影响其他容器或主机的进程。
文件系统命名空间
:这是用来隔离文件系统的。每个容器都有其独立的文件系统,包括 /dev、/proc、/bin、/etc、/lib、/usr 等目录,这些都是容器启动时由宿主机提供的。Docker 使用的是 overlay 或 overlay2 存储驱动,它将不同容器的文件系统叠加在一起,但每个容器都有其独立的视角。
网络命名空间
:这是用来隔离网络资源的,每个容器都有其独立的网络环境,包括 IP 地址、端口等。
用户命名空间
:这是用来隔离用户和权限的,每个容器都有其独立的安全上下文,包括用户、密码、权限等。
总的来说,Docker通过使用Linux Namespace和相关的技术,为容器提供了隔离后的执行环境,使得每个容器都有其独立的视角和资源。
下载安装 Docker
首先进行下载 windows 版本的 installer 安装包
安装完成提示:You must restart Windows to complete installation.