k8s入门学习

发布时间 2023-11-10 12:19:37作者: 独步清风中

k8s入门

https://kubernetes.io/zh-cn/docs/tutorials/hello-minikube/

minikube

启动集群
minikube start

创建实例

kubectl create deployment gin --image=gin_demo:v1

会创建相对应的poddeployment

此时服务端口只能内部集群访问

端口暴露

  1. 使用expose将服务端口暴露进行访问

kubectl expose deployment gin --type=LoadBalancer --port=8085

kubectl expose (-f FILENAME | TYPE NAME) [--port=port] [--protocol=TCP|UDP] [--target-port=number-or-name] [--name=name] [--external-ip=external-ip-of-service] [--type=type]

--type=LoadBalancer参数表明你希望将你的 Service 暴露到集群外部。

img

通过LoadBalancer,我们可以通过minikube service gin来访问服务端口

  1. 实时转发
kubectl port-forward deployment/gin 8080:8080

直接部署pod节点

kubectl run gin --image=gin_demo:v1 --port=8085

使用exec在容器执行名

通过exec可以执行类似docker容器指令

kubectl exec (POD | TYPE/NAME) [-c CONTAINER] [flags] -- COMMAND [args...]
[options]

用法和docker相同

镜像

  1. 通过minikube load加载打包好的镜像
# General
minikube image load <IMAGE_NAME>
# Example
minikube image load pz/demo
  1. 使用minikube build构造镜像
# General
minikube image build -t <IMAGE_NAME> .
# Example
minikube image build -t pz/demo .