Docker 简介

Docker是一个能够把开发的应用程序自动部署到容器的开源引擎。
Docker在虚拟化的容器执行环境中增加了一个应用程序部署引擎。该引擎的目标就是提供一个轻量、快速的环境,能够运行开发者的程序,并方便高效地将程序从开发者的笔记本部署到测试环境,然后再部署到生产环境。

1.2 组件

Docker的核心组件有:

  • Docker客户端和服务器,即Docker引擎;
  • Docker镜像;
  • Registry;
  • Docker容器。

1.2.1 Docker客户端和服务器

Docker客户端向Docker服务器或守护进程发出请求,服务器或守护进程将完成所有工作并返回结果。
Docker提供一个命令行工具docker以及一整套RESTful API来与守护进程交互。
在这里插入图片描述

1.2.2 Docker镜像

用户基于镜像来运行自己的容器。它是Docker生命周期中的“构建”部分。
镜像是基于联合文件系统的一种层式的结构,由一系列指令一步一步构建出来。比如:

  • 添加一个文件
  • 执行一个命令
  • 打开一个端口

1.2.3 Registry

Docker使用Registry来保存用户构建的镜像。分为公共和私有两种。

1.2.4 容器

Docker可帮用户构建和部署容器,用户只需要把自己的应用程序或服务打包放进容器即可。容器则是Docker生命周期中的启动或执行阶段。

Docker容器总结来说就是:

  • 一个镜像格式;
  • 一系列标准的操作;
  • 一个执行环境

1.3 Docker能做什么?

  • 加速本地开发和构建流程;
  • 能够让独立服务或应用程序在不同的环境中,得到相同的运行结果;
  • 用Docker创建隔离的环境来进行测试;
  • Docker可以让开发者先在本机上构建一个复杂的程序或架构来测试,而不是一开始就在生产环境部署、测试;
  • 构建一个多用户的平台即服务(PaaS)基础设施;
  • 为开发、测试提供一个轻量级的独立沙盒环境;
  • 提供软件及服务(SaaS)应用程序;
  • 高性能、超大规模的宿主机部署。

1.5 Docker的技术组件

Docker可运行于人任何安装linux内核的x64主机上,包括以下几部分:

  • 一个原生的Linux容器格式,Docker中称为libcontainer
  • Linux内核的命名空间,用于隔离文件系统、进程和网络
  • 文件系统隔离:每个容器都有自己的root文件系统
  • 进程隔离:每个容器都运行在自己的进程环境中
  • 网络隔离:容器间的虚拟网络接口和IP地址都是分开的
  • 资源隔离和分组:使用cgroups将cpu和内存之类的资源独立分配给每个Docker容器
  • 写时复制
  • 日志
  • 交互式shell
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值