最新DockerDesktop下使用k8s

1,安装dockerdesktop DokerDesktop For Windows

2,启用k8s

最新DockerDesktop下使用k8s_第1张图片

 3,安装Kubernetes Dashboard

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta5/aio/deploy/recommended.yaml

4,角色权限绑定

kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:kubernetes-dashboard

5,获取登录token

kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')

6,打开代理

kubectl proxy

7,浏览登录

浏览器打开:http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/loginsss

输入token登录

最新DockerDesktop下使用k8s_第2张图片 最新DockerDesktop下使用k8s_第3张图片

 8,部署一个nginx pod测试

kubectl create  deployment  nginx-app   --image=nginx   --replicas=2

--image=nginx 拉取最新nginx

 --replicas=2    设置启动两个容器

*还可以使用xxx.yaml文件的方式创建

9,查看pod部署信息

kubectl get pod -o wide

10, 暴露服务

kubectl expose pods podName --type=NodePort --name nginx-test

podName 第9,查询到的name

*还可以通过LoadBalancer方式暴露服务,有可能一直处于pending状态,外部无法访问。自建的 Kubernetes 集群暴露让外网访问,目前只能使用 NodePort 或 Ingress 等的方法进行服务暴露,或者使用MetalLB。

11,浏览器方式

最新DockerDesktop下使用k8s_第4张图片

*端口32023查看方式,也可在yaml文件中更改

kubectl get deployment,svc -o wide

12,常用命令

---一般
创建一个pod 
kubectl apply -f pod.yaml

kubectl get pod   查看pod,运行pod失败

删除一个pod
kubectl delete pod web-server-7b84dd448c-99chq

查看一个pod实例信息
kubectl describe pod web-server-7b

查看deployment--你创建的pod就属于某个deployment
kubectl get deployment

删除一个deployment,其实就是删除了你的服务,一个服务下有多个pod,直接删除会自动补充
kubectl delete deployment web-server

创建一个secret
kubectl create secret generic izorro-docker-io --from-file .\1234.txt

创建一个dockerconfigjson 用于
kubectl create secret docker-registry myregistrykey --docker-server=hub.docker.io --docker-username=xxxx --docker-password=xxxxx [email protected]

删除一个secret
kubectl delete secret myregistrykey


---系统信息
#查看集群信息
kubectl cluster-info

#查看集群版本
kubectl version

#查看集群api版本
kubectl api-versions


---命名空间 namespaces
1,查看所有
kubectl get namespace

2,获取某一个namespace下的pod
kubectl get pods -n kube-system 

更多信息请查看 博客 或者关注公众号:Z技术

你可能感兴趣的:(运维,docker,kubernetes,运维开发)