Kubernetes与Docker基本概念与常用命令对照

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: Docker是众多用户上手入门的基础容器和编排工具,提供了良好的开发者体验。Kubernetes是强大的容器编排平台,功能丰富。它们有很多概念和操作都有类似之处。我们今天会和大家对比基本概念与常用命令,可以方便熟悉Docker的用户上手Kubernetes。

DockerAndK8S

Docker是众多用户上手入门的基础容器和编排工具,提供了良好的开发者体验。Kubernetes是强大的容器编排平台,功能丰富。它们有很多概念和操作都有类似之处。我们今天会和大家对比基本概念与常用命令,可以方便熟悉Docker的用户上手Kubernetes。

概念对照

类别 概念 Docker Swarm mode Kubernetes
节点角色 主节点 Manager (其中一个选为leader) Master
工作节点 Worker Worker
工作负载 工作负载定义 Service Deployment
部署单元 Task (Container) Pod
伸缩定义 Replicated mode ReplicaSet
全局服务 Global mode DaemonSet
有状态服务 N/A (Compose V2定义了有状态服务) StatefulSet
Job N/A (阿里云扩展定义了离线任务和定时任务模型 Job/CronJob
服务发现 DNS DNS
负载均衡 Endpoint mode(VIP/DNSRR) Service VIP
服务路由 Routing Mesh (L4) , 阿里云扩展了丰富的4/7层路由支持 LB(L4阿里云提供了SLB路由支持)/Ingress (L7)
Port PublishedPort Endpoint
秘钥信息 Secret Secret
配置信息 Config ConfigMap
健康检查 健康检查 Health Check LivenessProbe
就绪检查 Health Check配合start_period参数 ReadinessProbe
资源限制 (CPU, Memory) Hard limits Limits Limits
Soft limit Reserverations Requested
调度约束 Node 亲和 Placement constraints NodeAffinity
部署亲和 PodAffinity
可用区 Placement preference
存储 存储卷 Volume Volume/Persistent Volumes Claims
网络 网络模型 CNM(Overlay, MacVLAN/IPVLAN, ...) CNI(Flannel, Calico, ...)
DNS支持 内置 DNS Addon

命令对照

分类 Docker Docker Swarm mode Kubernetes
基本部署单位 docker run docker service create kubectl run/kubectl create deployment
docker ps docker service ps kubectl get pods
docker inspect docker service inspect kubectl describe pod
docker attach kubectl attach
docker exec kubectl exec
docker logs docker service logs kubectl logs
docker top kubectl top pod
docker start
docker stop
docker rm docker service rm kubectl delete deployment
docker service scale kubectl scale
docker update docker service update kubectl rollout/update/kubectl replace
docker service rollback kubectl rollout undo
服务编排 docker stack deploy
docker stack ls
docker stack ps
docker stack rm
版本信息 docker version kubectl version
docker info kubectl cluster-info
docker node ls kubectl get nodes
kubectl top node

总结

今天通过Kubernetes与Docker Swarm模式基本概念与常用命令对照,来帮助熟悉Docker编排的同学上手Kubernetes 。

阿里云Kubernetes服务 全球首批通过Kubernetes一致性认证,简化了Kubernetes集群生命周期管理,内置了与阿里云产品集成,也将进一步简化Kubernetes的开发者体验,帮助用户关注云端应用价值创新。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
1月前
|
Docker 容器
Docker run命令-p参数详解
本文介绍Docker端口映射的基础用法。通过`docker run -p <宿主机端口>:<容器端口>`实现端口映射,例如`-p 5000:80`将宿主机5000端口映射到容器80端口,外部访问宿主机5000端口时流量会转发至容器内部的80端口。示例命令中,`-d`用于后台运行,`--restart=always`确保容器自动重启,`--name`指定容器名称。部署完成后可通过`http://服务器IP地址:5000`验证服务是否正常运行。
|
2月前
|
网络协议 Ubuntu Docker
Docker Compose--命令说明
Docker Compose--命令说明
380 30
|
2月前
|
Ubuntu Linux 开发者
常用的Docker命令:docker_cmd_sheet
以上就是一些常用的Docker命令,希望能帮助你更好地驾驭这个强大的工具。记住,Docker就像是一个魔法咒语,只有真正理解和熟练使用,才能发挥出它的最大魔力。
90 22
|
2月前
|
关系型数据库 MySQL 数据库
Docker 安装常用软件相关命令
本文介绍了在CentOS 7.9系统上安装Docker的详细步骤,包括添加阿里云镜像源、安装Docker及相关组件、启动服务以及配置镜像加速。同时,还展示了如何通过Docker安装MySQL 5.7版本数据库,涵盖拉取镜像、创建数据目录、运行容器及配置挂载点等操作,并提供验证安装成功的命令和截图。适合需要部署Docker与MySQL环境的用户参考。
191 5
|
2月前
|
Shell 应用服务中间件 nginx
docker 镜像的部分常用命令
docker镜像常用命令
103 16
|
2月前
|
关系型数据库 MySQL Docker
|
3月前
|
NoSQL 应用服务中间件 Redis
Docker 常用命令整理
Docker 常用命令整理
99 1
|
Docker 容器 应用服务中间件
|
1月前
|
Docker 容器
Docker网关冲突导致容器启动网络异常解决方案
当执行`docker-compose up`命令时,服务器网络可能因Docker创建新网桥导致IP段冲突而中断。原因是Docker默认的docker0网卡(172.17.0.1/16)与宿主机网络地址段重叠,引发路由异常。解决方法为修改docker0地址段,通过配置`/etc/docker/daemon.json`调整为非冲突段(如192.168.200.1/24),并重启服务。同时,在`docker-compose.yml`中指定网络模式为`bridge`,最后通过检查docker0地址、网络接口列表及测试容器启动验证修复效果。
|
2月前
|
关系型数据库 MySQL 数据库
【赵渝强老师】数据库不适合Docker容器化部署的原因
本文介绍了在Docker中部署MySQL数据库并实现数据持久化的方法,同时分析了数据库不适合容器化的原因。通过具体步骤演示如何拉取镜像、创建持久化目录及启动容器,确保数据安全存储。然而,由于数据安全性、硬件资源争用、网络带宽限制及额外隔离层等问题,数据库服务并不完全适合Docker容器化部署。文中还提到数据库一旦部署通常无需频繁升级,与Docker易于重构和重新部署的特点不符。
201 18
【赵渝强老师】数据库不适合Docker容器化部署的原因

相关产品

  • 容器服务Kubernetes版