[云原生]Docker

Posted SkyBiuBiu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[云原生]Docker相关的知识,希望对你有一定的参考价值。

基本概念

Docker包括三个基本概念:

  • 镜像(Image)
  • 容器(Container)
  • 仓库(Repository)

理解了这三个核心概念,就理解了Docker的整个生命周期。

Docker属于C/S架构模式,使用远程API来管理Docker容器。

Docker 镜像

Docker镜像就是一个只读的模板。

例如:一个定制的Web应用Ubuntu镜像可以包含一个完整的Ubuntu操作系统的运行环境,里面仅安装了Apache或其他用户需要的其他应用程序。

镜像可以用来创建Docker容器。

Docker提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载一个已经做好的镜像来直接使用。

Docker 容器

Docker利用容器来运行应用。

容器时从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。

可以把容器看作是一个简易版的Linux环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序,容器之间共享一个操作系统的内核。

*注意:镜像是只读的,容器在启动的时候会创建一层可写层在源镜像上。

Docker 仓库

仓库是集中存放镜像文件的场所。有时候会把仓库(Repository)和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像又不同的标签(Tag)。

仓库分为公开仓库(Public)和私有仓库(Private)两种形式。

最大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载。国内的公开仓库包括阿里云、腾讯云等容器仓库(需要申请)。

当然,用户也可以在本地网络内创建一个私有仓库。

当用户创建了自己的镜像之后就可以使用push命令将它上传到公有或者私有仓库,这样下一次在另外一台机器上使用这个镜像的时候,只需要从仓库上pull下来就可以了。

*注意:Docker仓库的概念与Git类似,注册服务器可以理解为像GitHub、Gitee这样的托管服务平台。

以上是关于[云原生]Docker的主要内容,如果未能解决你的问题,请参考以下文章

使用云原生buildpacks将你的代码转换成Docker Image | 技术干货

『 云原生·Docker』Docker中部署Nginx

『 云原生·Docker』Docker-compose 容器编排

云原生生态圈:服务快速上云--Docker部署SpringBoot案例详解

云原生之kubernetes实战部署k8s集群管理平台Wayne

[云原生]Docker