k8s与docker的常用命令

本文主要介绍了Docker和K8s的常用命令。Docker部分涵盖服务的启动、停止、重启等操作,以及容器和镜像的管理命令。K8s部分包含命名空间、pod、服务、node等资源的查询、创建、删除等命令,还有日志查看、文件复制等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker的常用命令

目录

docker的常用命令

k8s的常用命令


  • 启动docker服务:systemctl start docker
  • 停止docker服务:systemctl stop docker
  • 重启docker服务:systemctl restart docker
  • 查看docker服务状态:systemctl status docker
  • 设置开机启动docker服务:systemctl enable docker
  • 将宿主机文件拷贝到容器中:docker cp 要拷贝文件路径 容器名称:容器内文件目标路径

  • 将容器内文件拷贝到宿主机:docker cp 容器名称:要拷贝文件路径 宿主机路径
  • 查看容器信息:docker inspect 容器名称/ID
  • 停止容器:docker stop 容器名称/ID
  • 启动容器:docker start 容器名称/ID
  • 重启容器:docker restart 容器名称/ID
  • 查询镜像的所属容器信息: docker ps -a --no-trunc --filter ancestor=镜像:tag
  • 使用镜像以交互模式启动一个容器:docker run -it 镜像:tag  /bin/bash
  • 进入正在运行的容器(退出 exit,不会关闭容器):docker exec -it 容器名称/ID /bin/bash
  • 查询最近启动的容器:docker ps -l
  • 显示镜像的历史记录:docker history  镜像:tag
  • 查询镜像: docker images
  • 根据关键字查找镜像: docker images | grep 关键字
  • 将test:1.1.0镜像打包成test.tar文件:docker save -o test.tar test:1.1.0
  • 将test.tar文件解压成镜像:docker load -i test.tar
  • 将正在运行的容器打包成新镜像:docker commin  容器id/容器名  镜像名:版本号

k8s的常用命令

  • 查询所有的命名空间:k get ns
  • 创建新的命名空间:k k create namespace 命名空间名
  • 查询所有命名空间中所有pod:k get pods -A   -A和--all-namespace是一样的
  • 查询某个命名空间中的所有pod信息:k get pods -n 命名空间
  • 查询指定pod的日志:k logs pod名称 -n 命名空间
  • 根据关键字查找pod:k get pods -n 命名空间  -owide | grep 关键字
  • 查询指定pod的详细信息:k describe pod pod名字 -n 命名空间 
  • 进入指定pod终端:k exec -it pod名字 -n 命名空间   bash
  • 在所有命名空间中查找含有关键字的服务:k get svc --all-namespace | grep 关键字
  • 删除某个命名空间里的指定deployment:k delete deployment deployment名 -n 命名空间
  • 删除某个命名空间里的所有deployment: k delete deployment -all -n 命名空间
  • 删除某个命名空间里的指定服务:k delete svc 服务名 -n 命名空间
  • 删除某个命名空间里的所有服务:k delete svc -all -n 命名空间
  • 删除某个命名空间里的指定pod:k delete pod pod名称 -n 命名空间
  • 删除某个命名空间里的所有pod:k delete pod -all -n 命名空间
  • 查询node(节点)集群:k get node --show-labels
  • 查询指定node(节点)的详细信息:k describe node node名
  • 防止新的pod调度到某个节点(设置某个节点不可用):k cordon node名称
  • 恢复调度:k uncordon node名称
  • 获取某个源文件并输出到本地: k get deployment deployment名 -n 命名空间名 -o yaml>文件名
  • 应用资源文件: k apply -f  deployment.yaml 
  • 创建某个资源: k create -f deployment.yaml
  • 复制本地文件到pod中: k cp 本地文件 pod名称:容器地址 -n 命名空间名
  • 查询集群中的所有node的标签信息: k get node --show-labels
  • 给某个node添加标签:  k label node node名称 标签key=标签值
  • 查看指定pod的日志:k logs pod名称 -n 命名空间

<think>好的,我现在需要处理用户关于KubernetesDocker常用运维命令的查询。首先,我得确认用户的具体需求。他们想要一个汇总,涵盖常见的运维命令,可能包括集群管理、Pod操作、服务部署、日志查看等方面。同时,用户提到了引用的资料,我需要参考提供的四个引用内容,看看是否有相关的命令可以直接引用或者补充。 首先,查看用户提供的引用内容。引用[1]和[3]主要介绍KubernetesDocker的基本功能,可能没有具体命令。引用[2]提到了使用kubectl replace命令来修改Node状态,这是一个具体的运维命令,应该包含进去。引用[4]是关于Ansible的配置和命令,虽然和K8S/Docker有关联,但可能不属于用户直接需要的运维命令,不过如果用户提到AnsibleK8S结合使用,或许可以简要提及,但用户问题明确是关于K8SDocker的命令,所以可能不需要深入Ansible部分。 接下来,我需要回忆常见的Kubernetes命令,比如kubectl get、describe、logs、exec等,以及Docker的命令如docker ps、images、run等。另外,用户可能需要了解如何管理节点、部署应用、查看日志、调试等操作。需要注意命令的格式是否正确,是否需要使用代码块,以及是否需要分门别类,便于用户查阅。 然后,考虑是否需要分章节,比如分为Kubernetes常用命令Docker常用命令两部分,每个部分再细分不同的功能模块,比如集群管理、资源操作、故障排查等。同时,确保每个命令有简要的说明,让用户明白其用途。 另外,用户提供的引用[2]中的kubectl replace命令需要被包含在Kubernetes的节点管理部分。例如,标记节点不可调度可能需要用到cordon和drain命令,而replace可能是通过更新配置文件来实现状态修改,这也需要说明。 还要检查是否有遗漏的重要命令,比如滚动更新(rollout)、扩展部署(scale)、查看事件(get events)等。在Docker部分,常用的如构建镜像(build)、推送镜像(push)、查看容器日志(logs)等也需要涵盖。 最后,根据用户要求生成相关问题,这些问题应该围绕KubernetesDocker的运维命令展开,比如如何查看Pod日志、如何扩展部署副本数等,或者更深入的问题如如何调试启动失败的Pod,如何清理Docker的磁盘空间等。 需要确保所有命令使用正确的语法,比如Kubernetes中使用kubectl,Docker中使用docker,并且代码块使用正确的格式。同时,引用标记要正确添加,比如引用[2]和[3]中的相关内容。 可能还需要注意一些常见问题,比如节点资源不足时的处理方法,Pod处于Pending状态的原因,如何进入容器进行调试等,这些都可以在相关命令中体现。 总结步骤: 1. 分KubernetesDocker两大部分。 2. 每部分按功能分类,列出常用命令及说明。 3. 引用相关的引用内容,如kubectl replace的例子。 4. 生成相关问题,帮助用户进一步学习。 5. 确保格式正确,代码块使用反引号,引用标记正确。</think>### KubernetesDocker常用运维命令汇总 #### 一、Kubernetes常用命令 1. **集群节点管理** - 查看集群节点状态: ```bash kubectl get nodes ``` - 标记节点不可调度(维护模式)[^2]: ```bash kubectl cordon <node-name> ``` - 清空节点并驱逐Pod: ```bash kubectl drain <node-name> --ignore-daemonsets ``` - 通过配置文件更新节点状态(如恢复调度): ```bash kubectl replace -f unschedule_node.yaml ``` 2. **资源操作** - 查看所有Pod: ```bash kubectl get pods -A ``` - 查看Pod详情(包括事件和错误信息): ```bash kubectl describe pod <pod-name> ``` - 进入Pod的容器内调试: ```bash kubectl exec -it <pod-name> -- /bin/bash ``` - 查看Pod日志: ```bash kubectl logs <pod-name> ``` 3. **部署扩缩容** - 创建/更新资源(通过YAML文件): ```bash kubectl apply -f deployment.yaml ``` - 扩展Deployment副本数: ```bash kubectl scale deployment <deployment-name> --replicas=3 ``` - 滚动重启Deployment: ```bash kubectl rollout restart deployment <deployment-name> ``` --- #### 二、Docker常用命令 1. **容器管理** - 查看运行中的容器: ```bash docker ps ``` - 启动/停止容器: ```bash docker start/stop <container-id> ``` - 进入容器终端: ```bash docker exec -it <container-id> /bin/bash ``` 2. **镜像管理** - 拉取镜像: ```bash docker pull <image-name>:<tag> ``` - 构建镜像(通过Dockerfile): ```bash docker build -t <image-name>:<tag> . ``` - 删除未使用的镜像: ```bash docker image prune -a ``` 3. **日志监控** - 查看容器日志: ```bash docker logs <container-id> ``` - 实时监控容器资源使用: ```bash docker stats <container-id> ``` --- #### 三、常见运维场景示例 - **调试Pod启动失败**: 使用 `kubectl describe pod` 查看事件,结合 `kubectl logs --previous` 查看前一个容器的日志。 - **清理Docker磁盘空间**: ```bash docker system prune -a --volumes ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值