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 技术。
相关推荐
张忠琳3 小时前
【NVIDIA】 NVIDIA Container Toolkit v1.19.1 — OCI 模块超深度分析之三
云原生·容器·架构·kubernetes·nvidia
Elastic 中国社区官方博客4 小时前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana
风曦Kisaki7 小时前
#企业级docker私有仓库构建:harbor仓库与阿里云镜像仓库
阿里云·docker·容器
期待着20137 小时前
docker 安装 ,在centos7.9
运维·docker·容器
骑上单车去旅行9 小时前
Docker Compose 命令完全指南:从构建到运维
docker·容器·eureka
前端Baymax10 小时前
K8s PodCrashLoopBackOff假阳性排查
云原生·容器·kubernetes
spider_xcxc11 小时前
K8s 部署学习笔记
docker·容器·kubernetes·云计算·k8s
java_logo11 小时前
Docker Compose 部署 Apache Superset:轻松搭建开源 BI 平台
docker·开源·apache·superset·轩辕镜像·superset部署方案·docker superset
zy happy11 小时前
VMware虚拟机添加新的硬盘
java·linux·jvm·docker
阿标在干嘛1 天前
从物理机到K8s:政策快报平台的容器化部署实践
云原生·容器·kubernetes