minikube创建一个pod并暴露端口(使用docker驱动安装)

因为minikube使用service暴露端口是使用nodeIP:nodePort 而不是 localhost:nodePort 公开访问。我们只能使用kubectl的端口转发功能或者使用iptables的转发功能来实现外网服务暴露。
我这里使用shiro来举例

apiVersion: apps/v1
kind: Deployment
metadata:
  name: shiro550
spec:
  selector:
    matchLabels:
      app: shiro550
  replicas: 1
  template:
    metadata:
      labels:
        app: shiro550
    spec:
      containers:
        - name: shiro550
          imagePullPolicy: IfNotPresent
          image: vulhub/shiro:1.2.4
          ports:
            - containerPort: 8080
              name: web     

通过yaml文件可以看到监听得端口号为8080,【经过测试,不需要将类型改为NodePort】
使用kubectl的端口转发功能

kubectl port-forward --address 0.0.0.0 shiro-75d4475c89-h66vh  20080:8080

最终浏览器访问,http://localhost:20080,成功访问到页面。
minikube创建一个pod并暴露端口(使用docker驱动安装)_第1张图片

–driver=none 指定了使用的驱动程序为 none。这意味着 Minikube 将使用你本地机器的 Docker 守护进程来创建和管理 Kubernetes 集群,而不是创建一个独立的虚拟机。

你可能感兴趣的:(docker,容器,运维,k8s)