云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

Docker容器是什么?K8s和它有什么关系呢?

jxf315 2025-07-07 19:37:25 教程文章 3 ℃

Docker的英文原意是处理集装箱的码头工人,logo是鲸鱼运送一大堆集装箱,集装箱就是容器,主要是为了封装和隔离货物,而每个容器都有一个软件镜像,相当于集装箱中的货物。容器可以被创建、启动、关闭和销毁。Docker可以将任何应用及其依赖打包成一个轻量级、可移植、自包含的容器。容器可以运行在几乎所有的操作系统上。

根据官方的定义,Docker是以Docker容器为资源分割和调度的基本单位,封装整个软件运行时环境,为开发者和系统管理员设计的,用于构建、发布和运行分布式应用的平台。它是一个跨平台、可移植并且简单易用的容器解决方案。

Docker能在容器内部快速自动化地部署应用,并通过操作系统内核技术(namespaces、cgroups等)为容器提供资源隔离与安全保障。

光有容器还不行,还需要有管理容器生命周期的工具,即容器编排工具。目前比较主流的容器编排工具是K8s,全称为Kuburnetes,它是一个用于运行和管理容器的开源项目。

这里我们可以参考百度百科对其的定义:kubernetes,简称K8s,是用8代替名字中间的8个字符“ubernete”而成的缩写。是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。

Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。

在Kubernetes中,我们可以创建多个容器,每个容器里面运行一个应用实例,然后通过内置的负载均衡策略,实现对这一组应用实例的管理、发现、访问,而这些细节都不需要运维人员去进行复杂的手工配置和处理。

其特点主要有以下3点:

(1)可移植: 支持公有云,私有云,混合云,多重云(multi-cloud)

(2)可扩展: 模块化,插件化,可挂载,可组合

(3)自动化: 自动部署,自动重启,自动复制,自动伸缩/扩展

以上即为Docker容器和k8s技术的简明介绍,希望对你有所帮助。

最近发表
标签列表