Docker(一) 介绍

Docker简介

Docker是一个开源的应用容器引擎, 基于Go语言并遵从Apache 2.0协议开源

Docker可以让开发者打包他们的应用以及依赖包到一个轻量级, 可移植的容器中, 然后发布到任何流行的Linux机器上, 也可以实现虚拟化

容器时完全使用沙箱机制, 相互之间不会有任何接口, 更重要的是容器性能开销极低

 

Docker的应用场景

  1. Web应用的自动化打包和发布
  2. 自动化测试和持续集成, 发布
  3. 在服务型环境中部署和调整数据库或其他的后台应用
  4. 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS(Platform-as-a-Service)环境

Docker引擎

Docker引擎是一个包含以下主要组件的客户端服务器应用程序

  1. 一种服务器, 它是一种称为守护进程并且长时间运行的程序
  2. REST API用于指定程序可以用来与守护进程通信的接口, 并指示它做什么
  3. 一个有命令行界面工具的客户端

Docker引擎组件的流程如下图所示:

Docker的系统架构

Docker使用客户端/服务器(C/S)架构模式, 使用远程API来管理和创建Docker容器

Docker容器通过Docker镜像来创建

容器与镜像的关系类似于面向对象编程中对象与类。

 

标题

说明

镜像(Images)

Docker镜像是用于创建Docker容器的模板

容器

容器时独立运行的一个或一组应用

客户端

Docker客户端通过命令行或者其他工具使用Docker API

主机

一个物理或者虚拟的机器用于执行Docker守护进程和容器

仓库

Docker仓库用来保存镜像, 可以理解为代码控制中的代码仓库

Docker Machine

Docker Machine是一个Docker安装的命令行工具, 通过一个简单的命令即可以在相应的平台上安装Docker.


更多精彩内容