容器
一种开源、轻量级、可移植、自包含的软件打包技术(打包隔离应用及其依赖),使应用程序以相同的方式在其它系统上运行。
容器与虚拟机
容器:应用程序 + 应用程序需要的依赖库
虚拟机:应用程序 + 应用程序需要的依赖库 + 整个操作系统
两者都为应用程序提供了封装和隔离,主要区别是容器是在host操作系统的用户空间运行,与操作系统的其它进程隔离。
架构
1. docker客户端
docker build
docker pull
docker run
2. docker host宿主机
docker服务器:docker daemon(守护进程,负责创建、运行、监控容器,构建、存储镜像)
docker镜像:image(只读模板)
docker容器:container(镜像的运行实例)
3. 镜像仓库:registry(存放docker镜像的仓库)
4. 工作流程:
客户端向服务器发送请求,服务器负责构建、运行、分发容器。客户端和服务器运行在同一个host,客户端通过socket或REST API 与远处的服务器通信。
安装
网址:www.docker.com
Sudo wget -qo https://get.docker.com | sh # 输出到标准输出
Sudo usermod -aG docker i