什么是Docker?

一个开源的应用容器引擎

由Go语言开发而成,遵循Apache2.0开源协议

允许开发者打包自己的应用或者依赖包组件到一个轻量级可移植的容器中

Docker容器采用沙箱机制,相互之间无任何接口

容器性能开销低

Docker能干什么?

比如一个原生Windows系统不提供任何驱动及相关的组件

我们装机安装系统之后还需要自己找驱动下载安装

但是如果有一个包装好的镜像Windows系统,里面直接自带了各种驱动相关补丁

我们只需要安装好这个镜像系统即可,剩下的组件和驱动,让系统自己完成

Docker的应用容器类似于这种镜像系统的机制

比如我们开发和运维在Linux上面需要安装各种开发工具、数据库、中间件

这些东西就像驱动和组件一样,都需要我们人肉手动安装,效率极低

我们自己手动安装的方式有4种

- 1、下载源码包安装

- 2、下载Tar包或者Tar的压缩包

- 3、下载RPM红帽管理包安装

- 4、使用Yum安装

尽管提供了最便捷的Yum安装,

但是仍有大多数软件并没有在Yum镜像中,还是需要自己手动安装

Docker可以把你已经在Linux上面安装好的软件封装成镜像收入Docker容器中

在别的Linux系统上如果需要部署安装,就可以从Docker容器中获取镜像来部署【前提是得安装Docker】

Docker的核心概念

镜像:Images,用于创建Docker容器的模板

容器:Container,是独立运行的一个或一组应用

客户端:Client,通过命令行或者其他终端工具操作Docker

主机:Host,一个物理或者虚拟的机器用于执行Docker守护进程与容器

仓库:Registry,保存镜像,类似代码仓库Git

一些补充:

API:

https://docs.docker.com/reference/api/docker_remote_api

仓库地址 DockerHub:

https://hub.docker.com

Docker操作步骤:

- 1、安装Docker 【In Linux】

- 2、在Docker仓库寻找对应镜像

- 3、使用Docker运行镜像,该镜像会生成一个Docker容器

- 4、容器即软件,容器的启动停止 == 软件的启动停止

参考引荐:

http://blog.tc51.com/blog/1585189728711

【Docker】01 概述的更多相关文章

  1. Docker 01 概述

    参考源 https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0 https://www.bilibili.com/vid ...

  2. Docker 前沿概述

    目录 Docker 前沿概述 什么是Docker? Docker的基本概念 容器(Container) -- 镜像运行时的实体 镜像(Image) -- 一个特殊的文件系统 仓库(Repository ...

  3. Docker基本原理概述

    Docker基本原理概述 Docker是一个用于开发,交付和运行应用程序的开放平台.Docker能够将应用程序与基础架构分开,从而可以快速交付软件.借助Docker,可以以与管理应用程序相同的方式来管 ...

  4. docker 网络概述及网络模式详解

    docker 网络概述及网络模式详解 1.网络概述 2.网络模式详解 1.网络概述: Docker 网络实现原理 Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0) ...

  5. Docker(1)--概述

    Docker概述 Docker是一个用于开发,交付和运行应用程序的开放平台.Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件.借助Docker,您可以以与管理应用程序相同的方式来管理 ...

  6. 01 - 概述 VTK 6.0 迁移

    摘要 对vtk版本4和5的管道机制重新架架构的主要目的是:迁移数据对象和算法对象中的管道执行逻辑到一个新集合的类中,我们称这个集合类叫executives.分离数据和执行模型的代码后,可以双双简化修改 ...

  7. Docker 01 Introduction

    Docker的组成: Docker Engine,一个轻量级.强大的开源容器虚拟化平台,使用包含了工作流的虚拟化技术,帮助用户建立.并容器化一个应用. Docker Hub,提供的一个SaaS服务,用 ...

  8. Redis数据库 01概述| 五大数据类型

    1.NoSQL数据库简介 解决应用服务器的CPU和内存压力:解决数据库服务的IO压力: ----->>> ① session存在缓存数据库(完全在内存里),速度快且数据结构简单: 打 ...

  9. 001.Docker简介概述

    一 简介 Docker最初是dotCloud公司的一个内部项目,诞生于 2013 年初,由google公司开源的Go语言开发. Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移 ...

  10. Docker 开发概述

    This page lists resources for application developers using Docker. Develop new apps on Docker If you ...

随机推荐

  1. java 中 pop 和 peek 方法区别

    相同点:都返回栈顶的值. 不同点:peek 不改变栈的值(不删除栈顶的值),pop会把栈顶的值删除. 下面通过代码展现 /* * 文 件 名: TestPeekAndPopDiff.java */ i ...

  2. HDFS 常用操作命令

    HDFS 文件操作命令 注,其实常用命令不用网上搜,和linux下的命令很类似,触类旁通,直接在linux 上 hadoop fs 看一下就行了,不需要刻意去记 我把 linux 上的 help 列举 ...

  3. 快速上手Python编程

    前言 .center { width: auto; display: table; margin-left: auto; margin-right: auto } 类型 原理 优点 缺点 编译型语言 ...

  4. 文件系统(八):Linux JFFS2文件系统工作原理、优势与局限

    liwen01 2024.06.23 前言 在嵌入式Linux设备中,经常使用jffs2文件系统来作为参数区的文件系统格式.至于为什么要使用jffs2来作为参数区的文件系统,我猜大部分人都没有做过多的 ...

  5. WAV音频文件按秒切片段

    wav音频文件按秒切片段 import wave def split_wav_by_seconds(input_file, output_file, start_second, end_second) ...

  6. Kubernetes(三)实战入门

    实战入门 本章介绍如何在kubernetes集群中部署一个nginx服务,并能够对其进行访问. 1. Namespace Namespace主要作用是实现多套环境的资源隔离或者多租户的资源隔离. 默认 ...

  7. 【资料分享】Xilinx Zynq-7010/7020工业评估板规格书(双核ARM Cortex-A9 + FPGA,主频766MHz)

    1 评估板简介 创龙科技TLZ7x-EasyEVM是一款基于Xilinx Zynq-7000系列XC7Z010/XC7Z020高性能低功耗处理器设计的异构多核SoC评估板,处理器集成PS端双核ARM ...

  8. sqlCel查询一个表中部分字段的数据后插入到另一个表中

    问题: 部门每天需要从后台系统将物流总表数据导出,Excel中整理出订单的物流发货渠道和发货时间,再手动导入到数据库中,整个过程不麻烦,但在Excel中比较繁琐. 需求: 将这个繁琐的过程变得更简单, ...

  9. .Net Core 全局捕获异常-中间件

    1.代码版本 .Net Core 版本 2.2 2.目录结构 3.定义中间件 新建一个类 CustomerExceptionMiddleware.cs /// <summary> /// ...

  10. P6655 题解

    直接计数其实不好记,不如计数转期望. 令 \(f_i\) 表示点 \(i\) 成为制高点概率,不难发现期望就是 \(\sum f_i\). 根据定义对于 \(f\) 我们有如下转移 \(f_i = \ ...