美文网首页
docker和minikube

docker和minikube

作者: 三点四行间 | 来源:发表于2021-04-03 21:22 被阅读0次

    什么是Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

    和虚拟机的区别

    image

    组成

    Docker是一个C/S结构,由镜像,容器和仓库组成
    容器是由镜像实例化而来,这和我们学习的面向对象的概念十分相似,我们可以把镜像看作类,把容器看作类实例化后的对象。

    应用场景

    • 简化配置
    • 提高开发效率,不用部署环境
    • 快速部署
    • 代码流水线
    • 开发调试
    • 产品发布模式
    • 分布式集群
    • 存储过程储备数据

    docker安装使用

    ubuntu安装docker

    $ sudo apt-get install -y docker.io
    

    查看版本

    $ docker -v
    

    docker启动

    $ sudo /etc/init.d/docker start
    

    搜索centos镜像,第一个是官方镜像

    $ sudo docker search centos
    

    拉取centos镜像

    $ sudo docker pull centos
    

    查询本地已存在的镜像

    $ sudo docker images
    

    删除镜像

    $ sudo docker rmi [IMAGE ID]
    

    运行centos容器echo命令

    $ sudo docker run centos /bin/echo "Hello World"
    

    docker查看网络

    $ sudo docker network ls
    $ docker network inspect bridge # 查看bridge网络
    

    mac安装minikube

    brew install minikube
    

    开启minikube

    minikube start
    

    进入minikube

    minikube ssh
    

    创建删除pod

    kubectl create - pod_nginx.yml # 不推荐
    kubectl delete - pod_nginx.yml
    kubectl create -f rc_nginx.yml # 推荐使用rc,因为rc当删除一个pod会自动创建一个pod
    kubectl delete -f rc_nginx.yml
    

    删除pod

    kubectl delete pods nginx-ksp22
    

    获取pod,rc,rs信息

    kubectl get pods # 不推荐
    kubectl get pods -o wide
    kubectl get rc  
    kubectl get rc -o wide
    kubectl get rs
    kubectl get rc -o wide
    kubectl get deployment
    kubectl get deployment -o wide
    

    进入pod容器

    kubectl exec -it nginx sh # 进入pod的第一个容器
    kubectl exec -c --container=''  # 指定容器
    

    pods信息

    kubectl describe pods nginx
    

    开启多个pod

    kubectl scale rc nginx --replicas=5  #开启5个nginx,包括已存在的
    kubectl scale rs nginx --replicas=5  #开启5个nginx,包括已存在的
    

    创建deployment

    kubectl create -f deployment_nginx.yml
    

    查看deployment历史

    kubectl rollout history deployment nginx-deployment
    

    回滚deployment历史

    kubectl rollout undo deployment nginx-deployment
    

    对deployment做修改

    kubectl set image deployment nginx-deployment nginx=daocloud.io/library/nginx:1.13
    

    相关文章

      网友评论

          本文标题:docker和minikube

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