通俗易懂的告诉你容器是什么

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 1.Docker本身并不是容器,它是创建容器的工具,是应用容器引擎。2.Docker包括:镜像(Image)、容器(Container)、仓库(Repository),后面会重点介绍。3.K8S,全称kubernetes,是基于容器的集群管理平台,可以先简单理解为是管理容器的:可以实现容器集群的自动化部署、自动扩缩容、维护等功能。

明确概念


  1. Docker本身并不是容器,它是创建容器的工具,是应用容器引擎。
  2. Docker包括:镜像(Image)、容器(Container)、仓库(Repository),后面会重点介绍。
  3. K8S,全称kubernetes,是基于容器的集群管理平台,可以先简单理解为是管理容器的:可以实现容器集群的自动化部署、自动扩缩容、维护等功能。


微信图片_20221112124703.jpg


为什么要学容器


不管是Docker还是K8s,都是目前的主流技术,而且各大云厂商都基于容器技术进行封装,提供了相关服务,我们能很方便的上手操作。


掌握了docker和k8s,我们就能告别臃肿的虚拟机,能够一次构建,四处部署、能够动态扩缩容、能够无人值守等等


容器是什么?


首先我们想一下现实生活中的容器是什么呢?

装东西用的都可以称为容器,比如“瓶子”、“箱子”、“水杯”、“集装箱”等等。

我们再想一下容器的作用是什么?说白了就是“装东西”,为了方便我们搬用。

比如把水装到瓶子里,我们只要拿好瓶子,就能轻轻松松的把水带到任何地方。


微信图片_20221112124709.jpg



计算机世界里的容器概念也一样,它的作用也是“装东西”,只不过不是装水了,而是装:代码、环境、运行时、配置文件、系统文件、设置等等。


我们可以简单理解为:保证程序运行的对象都可以装到容器中。


容器的作用


让我们能够只关注应用程序本身,不需要关注应用程序运行的环境和系统等,让环境和系统可以复用。


容器技术的特点


  1. 轻量化:只打包必要的Bin/Lib
  2. 方便移植:一次构建,随时部署
  3. 秒级部署:部署速度非常快,我们可以通过配置yaml文件设置配置参数
  4. 弹性伸缩:动态扩容,新的技术思路解决高并发问题


容器的强大之处


分享一下我的真实案例:


我做过的项目比较多,但是开发环境和框架基本是一样的,都是LNMP环境,PHP开发语言,Laravel框架开发。


当我接到开发第二个项目的需求时,我就有意识的去研究怎么减轻部署环境的工作量,我当时找到的办法是:不管阿里云还是腾讯云都有自定义镜像的功能。


我就使用云厂商的自定义镜像功能,需要2步:


  1. 把LNMP开发环境、代码、框架。Nginx配置等等制作成自定义镜像
  2. 在开发新项目申请新的服务器时,选择我制作的自定义镜像,这样当我服务器启动的时候就直接可以开发新项目了。


注意,我上面一直在提镜像这两个字。镜像是什么呢? 我的理解就是,类似我们按照电脑时的系统盘,镜像盘,是一个文件包,把我们的配置文件,系统环境等等进行打包,支持我们换一个机器进行安装。


我抛出一个问题,来证明容器的强大之处。


比如我的项目A使用的CentOS系统,我的项目B因为种种原因需要使用Ubuntu,我前面提到的自定义镜像能怎么解决这个问题呢?


答案是: 自定义镜像不支持(在云厂商不能修改系统,即源镜像依赖的是什么系统,基于自定义镜像部署的服务器就是什么系统。)但是容器技术可以。


相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
6月前
|
Kubernetes 持续交付 开发者
开源容器的魅力:探索使用开源容器的奥秘
随着云计算和微服务架构的蓬勃发展,开源容器技术如Docker和Kubernetes等正在改变应用程序的构建、交付和管理方式,开源容器技术成为了构建、交付和管理应用程序的重要工具。作为开发者,关于开源容器的使用也是在逐渐变多,那么本文就来分享一下开发者关于使用开源容器的原因,以及一些使用开源容器的经验,本文只做简单的分享,且只代表个人观点,如有不同意见欢迎评论区交流。
72 1
开源容器的魅力:探索使用开源容器的奥秘
|
Prometheus Cloud Native Go
Docker容器:深入浅出教程
Docker容器:深入浅出教程
87 0
|
5月前
|
Kubernetes Cloud Native Docker
什么是容器:从基础到进阶的全面介绍
什么是容器:从基础到进阶的全面介绍
465 1
|
6月前
|
Kubernetes Cloud Native 网络协议
一文搞懂“镜像“和“容器“
一文搞懂“镜像“和“容器“
79 1
|
Kubernetes 测试技术 虚拟化
学习容器技术的心得
学习容器技术是一个相当有意思的过程。它的发展在近年来得到了广泛的关注和应用,因为容器技术具有很多优点,比如轻量级、可移植、可伸缩等。
|
Kubernetes Ubuntu Java
深入剖析Kubernetes学习笔记-07 | 白话容器基础(三):深入理解容器镜像
深入剖析Kubernetes学习笔记-07 | 白话容器基础(三):深入理解容器镜像
350 0
|
存储 C语言 C++
C++常见容器一网打尽
C++常见容器一网打尽
|
算法 程序员 C++
序言 容器
序言 容器
74 0
|
Linux Docker 容器
容器,到底怎么一回事
用故事的方式让你记住。同时解释实现容器的关键技术。
91 0
|
设计模式 存储 监控
【公开课】理解 Pod 和容器设计模式|学习笔记
快速学习【公开课】理解 Pod 和容器设计模式
153 0
【公开课】理解 Pod 和容器设计模式|学习笔记

热门文章

最新文章