Docker 基础组件

Docker 的三大重要概念:容器、镜像、仓库

Docker 官方给用户提供一个官方的docker仓库,好比手机中的应用商店,里边存放着各种打包好的docker应用(Docker镜像)。

用户可以去搜索自己需要的镜像,下载到本地。最后,用户就可以应用docker 镜像创建docker容器,容器都是基于镜像而创建的,基于一个镜像可以创建若干个名字不同但是功能相同的容器。

Docker 命令

基本用法:docker + 命令关键字 + 参数
查询命令使用方法:docker COMMAND --help 查询
非交互模式下下载软件包,添加 -y 参数 docker run image-name apt-get install vim
命令分类:

  • 针对docker容器的查询、创建、开启、停止操作:docker ps、docker run
  • 针对docker镜像的查询、创建、删除操作:docker images、docker build
  • 针对docker仓库的查询、下载操作:docker search、docker pull

命令嵌套:docker rm $(docker ps -a -q) 删除所有停止运行的容器

Docker 内部结构

image.png

过程:在一台主机上、启动docker daemon ,所有的容器都被守护进程控制,同时守护进程监听并接受Docker客户端(Docker Client)指令,并把结果返回给docker Client。

为什么要用docker

一致的运行环境

  • 开发过程中一个常见的问题是环境一致性问题。由于开发环境、测试环境、生产环境不一致,导致有些 bug 并未在开发过程中被发现。而 Docker 的镜像提供了除内核外完整的运行时环境,确保了应用运行环境一致性,从而不会再出现 「这段代码在我机器上没问题啊」 这类问题。

更轻松的迁移

  • 由于 Docker 确保了执行环境的一致性,使得应用的迁移更加容易。Docker 可以在很多平台上运行,无论是物理机、虚拟机、公有云、私有云,甚至是笔记本,其运行结果是一致的。因此用户可以很轻易的将在一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行的情况。

整体交付

  • 把应用的依赖打包到 docker 镜像中,保证部署的每一台机器依赖都是完整的,同时使用容器技术屏蔽了操作系统和硬件的差异,使得开发、测试、部署、运维过程中能够保持一致,解决了很多维护难题。

你可能感兴趣的:(Docker 基础组件)