Docker学习(三)认识Docker和常用命令

Docker体系结构

  • docker服务端,作为服务的提供方,核心进程 docker daemon,所有docker命令都是通过这个进程完成的

  • REST API:通信层,基于WEB容器提供http协议服务
  • docker CLI: 提供常用的docker命令

基于HTTP协议,docker的兼容性和扩展性是特别好的
基于这种CS架构,对于应用来说,最大的好处就是服务器与客户端可以不用安装在同一台电脑上,可以跨机器管理多台服务器,提高运维效率

Docker命令

  • docker pull 镜像名<:tags> -从远程仓库拉取镜像
  • docker images - 查看本地镜像
  • docker run 镜像名<:tags> -创建容器,启动应用
  • docker ps - 查看正在运行中的镜像
  • docker version - 查看docker版本
  • docker rm <-f> 容器ID - 删除容器 -f 强制删除,生产环境禁用强制删除
  • docker rmi <-f> 镜像ID - 删除镜像,-f强制删除,生产环境禁用强制删除
  • `docker build -t 机构/镜像文件<:tags> Dockerfile目录 - 编译dockerfile镜像配置文件,生成自定义镜像文件
  • `docker exec -it 容器id - 运行docker容器

Docker执行过程

  • [x] Docker Host是我们的docker宿主机
  • [x] Registry是docker拉取镜像的远程仓库,提供大量的镜像供下载,下载完成之后保存在Images中
  • [x] Docker Daemon是docker的服务线程,处理客户端命令
  • [x] Images 是本地的镜像仓库,可以通过docker images查看
  • [x] Docker Daemon是docker的服务线程,处理客户端命令

    执行过程

  • 客户端通过rest api 发送指令到 docker host的docker daemon进程,
  • Docker daemon进程处理不同的指令,交将结果返回到客户端

以docker pull 命令为例

  1. 客户端通过rest api将指令发送给docker daemon
  2. docker daemon 先检查本地images中有没有相关的镜像
  3. 如果本地没有相关的镜像,则向镜像服务器请求,将远程镜像下载到本地
  4. 返回客户端

写在最后

相关文章会首发公众号,可以关注公号albk,关注后可以获取大量学习视频

期望热爱技术的你一起来交流,获取最新资料和学习资源,可以关注公众号albk, 个人博客 !

Docker学习(三)认识Docker和常用命令的更多相关文章

  1. docker 学习(十) 容器常用命令

    1  docker run -it ubuntu:15.10 /bin/bash 如果有ubuntu:15.10这个镜像,就run,否则会从dockerhub下载,并run. -it 一般连用,表示按 ...

  2. docker 学习笔记(1)--常用命令

    docker pull---- 获取image(镜像)docker build---- 创建image(镜像)docker images ----查询所有的image(镜像)docker run--- ...

  3. docker 学习(十一) 镜像常用命令

    1 创建账户,创建仓库   首先在dockerhub上有自己的账户,然后创建一个repository(如上图), 然后创建一个名字为robinfei/consumer的仓库. 2  本地镜像打标签(比 ...

  4. Docker(二)安装及常用命令

    1.安装 1.安装虚拟机VMWare 链接:https://pan.baidu.com/s/1Xl7ENUm2gapPOFs-iXHpRQ 提取码:eubm 2.下载centos,我下的是这个版本的 ...

  5. Dockerfile自动制作Docker镜像(二)—— 其它常用命令

    Dockerfile自动制作Docker镜像(二)-- 其它常用命令 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:Dockerf ...

  6. linux基础学习之软件安装以及常用命令

    linux基础学习之软件安装以及常用命令 调用中央仓库: yum install wget 然后下载nodejs: wget https://nodejs.org/dist/v10.14.2/node ...

  7. redis学习-列表(list)常用命令

    redis学习-列表(list)常用命令   lpush:从列表左侧头部添加数据 rpush:从右侧尾部添加数据 lpop:从给左侧头部取出一个元素 rpop:从右侧尾部取出一个元素 lrange:取 ...

  8. 一、Linux概述 二、Linux的安装 三、Linux的常用命令(重点)

    一.Linux概述###<1>操作系统 OS,管理和控制 计算机的 硬件和软件资源的 计算机程序. 最基本的系统软件. 是用户和计算机交互的桥梁,是硬件和软件交互的桥梁. 操作系统:she ...

  9. Docker学习笔记(1) — docker 常用命令

    1. docker version显示 Docker 版本信息.2. docker info显示 Docker 系统信息,包括镜像和容器数.3. docker searchdocker search ...

  10. docker(三) 镜像和容器常用命令

    一.镜像操作 1.搜索镜像 可以直接在Docker Hub 直接搜索镜像,当然也可以使用命令来搜索. docker search 名称 docker search tomcat 2.拉取镜像 dock ...

随机推荐

  1. Python--day36--操作系统的作用;多道技术;

  2. linux 短延时

    当一个设备驱动需要处理它的硬件的反应时间, 涉及到的延时常常是最多几个毫秒. 在这 个情况下, 依靠时钟嘀哒显然不对路. The kernel functions ndelay, udelay, an ...

  3. vue 模块化 路由拆分配置

    一.普通路由配置 通常我们编写vue路由配置都会写在 /src/router/index.js 这个文件下.但是,随着我们的vue项目变得越来越大后,路由也随之变得越来越多,出现的问题就是我们所有的路 ...

  4. Jasypt加密SpringBoot配置文件

    如果 SpringBoot 的 properties 文件中含有用户名密码等敏感信息,为了安全起见需要对明文密码加密.Jasypt 是用来加密的 jar 包. 1.引入 Jasypt 在 pom.xm ...

  5. C# 获取进程退出代码

    我需要写一个程序,让这个程序知道另一个程序是否正常退出,于是就需要获取这个进程的退出代码 在程序如果需要手动退出,可以设置当前的退出代码 static void Main(string[] args) ...

  6. H3C重启设备

  7. dotnet 手动解决 json 解析中不合法字符串

    如果使用 Newtonsoft Json 解析字符串,字符串里面有不清真的格式,那么默认的解析将会炸掉.如果想要自己解决字符串中的不清真格式,可以使用传入 JsonSerializerSettings ...

  8. 一个简单的Web服务器-支持Servlet请求

    上接 一个简单的Web服务器-支持静态资源请求,这个服务器可以处理静态资源的请求,那么如何处理Servlet请求的呢? 判断是否是Servlet请求 首先Web服务器需要判断当前请求是否是Servle ...

  9. CP防火墙配置NAT

    Static NAT配置 Step1:创建host对象并且配置static NAT,如下图: Step2:修改全局属性的NAT项的ARP代理选项,勾选即可,如下图: Step3:在网关的web por ...

  10. C++的特殊预处理定义#、##和#@

    c/c++的预处理定义: 一.Stringizing Operator (#) 在c和c++中数字标志符#被赋予了新的意义,即字符串化操作符.其作用是:将宏定义中的传入参数名转换成用一对双引号括起来的 ...