Docker+K8S

宣胤

Docker

为什么学Docker?

image-20230606145241038
image-20230606145241038

Docker的正式学习

一、基本概念

1 概念

Docker是基于Google公司推出的Golang语言开发而来,基于Linux内核的Cgroups、NameSpace,以及Union FS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。
由于隔离的进程独立于宿主机和其他隔离的进程,也被称之为容器。
最初的Docker的基于LXC的,后来取出LXC转而使用自行开发的Libcontainer。
Docker被定义为开源的容器引擎,可以方便的对容器进行管理。例如对镜像打包封装,引入Docker Registry对镜像统一管理。
利用Docker可以实现开发,测试,生产环境的部署一致性,极大的减少运维成本。

2 解决的问题:

  1. 统一标准

    应用构建

    应用分享

    应用运行

  2. 资源隔离

    cpu、memory资源隔离与限制

    访问设备隔离与限制

    网络隔离与限制

    用户、用户组隔离限制

2 容器化技术:

  1. 基础镜像MB级别
  2. 创建简单
  3. 隔离性强
  4. 启动速度秒级
  5. 移植和分享方便

3 架构

Docker引擎

image-20230606151205372
image-20230606151205372

Docker平台组成

image-20230606151304523
image-20230606151304523

Docker最核心的组件:

  • Image镜像,构建容器(应用程序运行所需的环境,打包为镜像文件)
  • Container,容器(应用程序就跑在容器中)
  • 镜像仓库(docker hub)(保存镜像文件,提供上传、下载镜像)作用好比github
  • Dockerfile,将你部署项目的操作,写成一个部署脚本,这就是Dockerfile,且该脚本还能够构建出镜像文件
  • 标题: Docker+K8S
  • 作者: 宣胤
  • 创建于: 2023-06-06 14:23:31
  • 更新于: 2023-06-10 01:06:26
  • 链接: http://xuanyin02.github.io/2023/060663789.html
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
 评论
此页目录
Docker+K8S