Docker K8s VM 简介

1. Docker 简介

  • Docker 是一种容器技术,将应用及其依赖打包成容器,便于跨平台部署与运行。
  • Docker 容器共享宿主机的操作系统内核,资源开销小,启动速度快。

2. Docker 在不同平台上的运行原理

  • 在 Linux 上,Docker 容器直接共享宿主机的 Linux 内核。
  • 在 Mac/Windows 上,Docker 通过虚拟机(如 HyperKit)间接提供 Linux 内核,容器实际上运行在这个虚拟机中。

3. Docker 容器内的应用安装与目录结构

  • 容器内应用安装方式与原生操作系统一致(如 CentOS 用 yum/dnf/rpm)。
  • 目录结构基本与原生系统一致,但容器镜像通常较精简,服务和文件较少。
  • 推荐用 Dockerfile 构建定制镜像以实现自动化部署。

4. 判断云服务器实例类型

  • 云服务商售卖的实例通常是虚拟机(如 KVM/Xen),不是 Docker 容器。
  • 可以通过 /.dockerenv 文件、/proc/1/cgroupdmidecode/proc/cpuinfo 等命令判断实例类型。
  • 容器服务(如 ACK、TKE、CCE)才会用 Docker 技术。

5. Kubernetes(K8s)与 Docker 的关系

  • Docker 负责容器打包和运行,K8s 负责容器的集群调度和管理。
  • K8s 早期直接用 Docker 作为容器运行时,后期转向 containerd、CRI-O 等更轻量的运行时,但依然兼容 Docker 镜像。

6. 虚拟机与 Docker 容器的区别

方面 虚拟机(VM) Docker 容器
隔离性 强(完整操作系统) 进程级,较弱
资源占用
启动速度 慢(分钟级) 快(秒级)
适用场景 传统应用、跨系统 微服务、云原生
灵活性

7. 总结建议

  • 虚拟机适合需要高度隔离、安全性高、跨操作系统的场景。
  • Docker 容器适合弹性伸缩、快速部署、微服务、持续集成等现代云原生场景。
  • K8s是容器集群编排平台,负责容器的自动化管理和调度。
  • 云主机一般是虚拟机,容器服务才用 Docker 技术。
相关推荐
猫吃了源码2 小时前
k9s简介和安装
linux·docker·kubernetes
云原生指北3 小时前
Docker Sandboxes 上手:从安装到第一次跑 Agent
运维·docker·容器
ziyun6668884 小时前
Docker 容器化 Web 服务架构搭建与自动化运维项目
运维·docker·架构
heimeiyingwang6 小时前
【架构实战】Kubernetes故障排查全景图:从Pod异常到集群雪崩的诊断手册
容器·架构·kubernetes
骇客野人6 小时前
Docker Compose 部署多个独立 Jar 服务完整实操步骤
docker·容器·jar
AAA@峥6 小时前
K8s 资源管控:ResourceQuota 与 LimitRange 机制详解与实战
云原生·容器·kubernetes
daoihfoaf7 小时前
太原助听器品质甄选
容器
秦渝兴8 小时前
Ansible 自动化部署 K8s 三节点集群(完整教程)
kubernetes·自动化·ansible
云川之下8 小时前
【k8s】Docker inspect 命令
docker·容器·kubernetes
猫吃了源码9 小时前
CentOS7使用Kubeadm安装部署K8s(Kubernetes)最新稳定版本1.26.x
云原生·容器·kubernetes