美文网首页k8s&docker
Docker&kubernetes的一些小技巧

Docker&kubernetes的一些小技巧

作者: 阿乐_822e | 来源:发表于2020-04-11 14:09 被阅读0次
    # 拷贝k8s容器中的文件
    kubectl cp -c  pod-name namespace/container-name:/path-in-container/xxx.log  xxx.log(宿主机目的文件名)
    # 只下载 不安装 :
     yum install  --downloadonly --downloaddir=/root httpd
    # 或者:
    yumdownloader --resolve docker-ce docker-ce-cli containerd.io
    # 快速更改主机名称
    nmcli general hostname [YOUR NEW HOSTNAME]
    systemctl restart systemd-hostnamed
    # 将镜像导出为文件(在离线环境中,可先在一台可以上网的机器上下载好镜像,再导出为文件,到拷到内网机器上导入)
    docker save -o my_ubuntu_v3.tar runoob/ubuntu:v3
    # 将文件导入到镜像仓库
    docker load -i my_ubuntu_v3.tar
    # 以root身份进入容器
    docker exec -it --user root <container id> /bin/bash
    # 终止所有运行中的容器
    docker kill $(docker ps -q)
    # 删除本机全部容器
    docker rm $(docker ps -a -q)
    # 删除本机全部镜像
    docker rmi -f $(docker images -q)
     # 切换到kube-system namespace: 
     kubectl ns kube-system
    # 获取所有资源:
    kubectl get all
     kubectl get all --all-namespaces -o wide
     kubectl get all -A -o wide
    # 删除某一个pod的多个副本   
    kubectl get po | grep jenk | cut -d " "  -f 1-2 |xargs kubectl delete po
    # 快速删除pod
    kubectl delete po xxxx -n xxx  --force --grace-period=0
    # 临时给 服务帐号授权
    kubectl  create clusterrolebinding permissive-binding --clusterrole=cluster-admin --group=system:serviceaccounts
    # 取消以上临时授权
    kubectl delete clusterrolebinding permissive-binding
    # 根据deploy查看其创建文件:
    kubectl get deploy/kube-dns --export -o yaml>>old-dns.yaml  -n kube-system
    # 查看SVC的落地IP:
    kubectl get ep xxx --namespace=xxx
    # linux主机间拷贝文件:
     scp -r root@43.224.34.73:/home/lk /root
    # 向pod中拷贝宿主机文件
    kubectl cp /dirname/filename podname:/dirname/.
    # 删除所有容器:
    docker rm -f $(docker ps -a | awk '{print $1}')
    #查看minikube状态  
    minikube status
    # 查看kubelet服务的日志
    journalctl -f -u kubelet(相当于tail -f)
    journalctl -xeu kubelet
    systemctl kubelet.service status -l
    # 临时关闭swap分区:
    swapoff -a
    #永久关闭:
    sed -ri 's/.*swap.*/#&/' /etc/fstab
    # 修改deployment镜像
    kubectl set image deployment kubia nodejs=luksa/kubia:v3
    # 观察控制器发出的事件:
    kubectl get events --watch
    # 观察命令的结果,每隔一秒钟刷新一次
    watch -n 1 kubectl top pod/kubectl get hpa,deployment
    # 临时创建并运行一个或多个容器镜像: 
    kubectl run test  -it --rm --restart=Never --image=luksa/kubectl-proxy 
        --image-pull-policy=IfNotPresent -n bar(通常会创建一个deployment 或job来管理容器,--rm表示当pod被终止后会自动删除)
    # 查看资源使用情况
    kubectl top nodes/pods
    # 解除/反解除node
    kubectl cordon/uncordon nodeip 
    

    相关文章

      网友评论

        本文标题:Docker&kubernetes的一些小技巧

        本文链接:https://www.haomeiwen.com/subject/vthymhtx.html