docket/k8s 常用命令整理

docker:

doker ps -a 查看所有docker,包括已经停止运行的

docker rm -f `docker ps -a -q`  删除所有docker

docker cp file_name (docker_name):/home/  主机和docker之间互相拷贝文件,位置可颠倒

若docker安装了scp  scp hello.txt root@192.168.12.3:/home 效果一样。

docker start 已停止的容器名

docker load -i 镜像包.tar; //得到loaded image ID
docker run -idt --name my_docker -v /svn:/svn +loaded image ID;  //运行镜像,--name指定docker名  -v 设置映射
docker exec -it my_docker /bin/bash;  //进入到docker中,exit 退出

docker system prune -a; //删除停止的容器

docker 命令详解 https://www.runoob.com/docker/docker-tutorial.html

 

k8s操作和docker 差不多:

kubectl get pod //获取容器名 -o wide 可以输出更多信息

kubectl exec -it pod_name bash //运行pod

kubectl get deployment //输出所有deployment ,-o wide输出更多

kubectl edit deployment +deployment_name  //编辑容器环境变量 修改replicas: 控制pod副本数,注意:不能使用tab键,否则保存退出时会报错,不能保存,且空格键一定要对齐

kubectl delete pod +pod_name 删除pod

kubectl cp //同docker cp

kubectl logs -f pod_name //若设置了日志可以查看日志

 

一、基础概念

container:容器,就是docker容器的概念

pod:一组容器,是kubernetes的一个基本操作单位,一个pod中的所有容器共享IP,共享存储卷

deployment:可以看做是rc的升级版,可以更好的部署&编排无状态pod

statefulSet:用做有状态节点的部署(比如数据库)

service:可以理解为微服务架构中的微服务,提供了域名,解决服务路由并做负载均衡,管理端口映射关系,承担了服务发现功能

二、基本操作

1、获取所有pod/deployment/statefulSet/service

kubectrl get pod/deployment/statefulSet/service

2、进入容器,对于只有一个容器的pod,可以省略-c [container-name]

kubectl exec -it [pod-name] -c [container-name] /bin/bash

3、查看日志,对于只有一个容器的pod,可以省略 [container-name]

kubectl logs -f [pod-name] [container-name]

4、文件拷贝,对于只有一个容器的pod,可以省略 [container-name]

kubectl cp [file-path] [pod-name]:[file-path] -c [container-name]

kubectl cp [pod-name]:[file-path] [file-path] -c [container-name]

从容器内拷贝到容器外时会报错,但实际已经成功,错误可忽略

5、替换镜像(版本号不同)

  1. 将tar拷贝到服务器
  2. docker load -i [image-name.tar]
  3. docker push [image-name:version]
  4. kubectl set image [deployment-name] [container-name]=[image-name:version]

6、替换镜像(版本号相同)

  1. 前三步不变
  2. kubectl delete pod [pod-name]

7、修改副本数量

kubectl scale --replicas=n deployment/[deployment-name]

kubectl scale --replicas=n statefulSet/[statefulSet-name]

8、修改deployment/statefulSet/service

kubectl edit deployment/statefulSet/service [deployment/statefulSet/service-name]

如果对kubernetes不熟,不建议这样修改,如需修改,请找人确认后再改

9、暂时不涉及命名空间,如果后续区分命名空间,命令后加 -n [namespace]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值