Docker的基本概念

什么是Docker?

Docker是基于LXC容器技术使用GO语言开发的开源软件。核心功能可以理解为:将代码的运行环境+代码打包成镜像。
将Docker的镜像可以创建为容器,然后到处运行。

Docker的设计理念

  • 构建(Build)
  • 运输(Ship)
  • 运行(Runing)

Docker的应用场景

  • Web应用的自动化打包和发布
  • 自动化测试和集成、发布
  • 在服务型环境中部署和调整数据库或其他后台应用
  • 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境

Docker的架构

Docker 包含三个基本概念:

  • 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
  • 仓库(Repository):仓库可看着一个代码控制中心,用来保存镜像。

Docker使用客户端-服务器(C/S)架构模式,通过远程API来创建容器。

Docker容器可以通过Docker镜像来创建。

Docker容器和Docker镜像的关系就类似于对象和类。Docker容器是对象,Docker镜像是类。
在这里插入图片描述

名称 说明
docker镜像(image) docker镜像是用来创建docker容器的模板
docker容器(container) docker容器是独立运行的一个或一组应用,是镜像运行时的实体
Docker 客户端(Client) Docker 客户端通过命令行或者其他工具使用 Docker SDK
Docker 主机(Host) 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。
Docker Registry Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。
Docker Machine Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker

Docker的安装

https://www.runoob.com/docker/centos-docker-install.html