Document

 咨询热线

18969909123

微信扫码咨询

收 起 

咨询热线

返回顶部

k8s-minikube pod的创建

发布时间: 2020-09-28 22:46:08 作者:本站编辑 来源: 本站原创 浏览次数:21907

Pod是K8s中的工作节点,是K8s管理的最小单元,K8s中Pod节点的资源可以使用Yaml、Json文件来描述,下面我们来演示如何在K8s上创建一个名为k8s-test-pod的Pod,并在k8s-test-pod中启动k8s-container的容器。

首先,我们准备一个dangerzhu/hello-k8s-pod的镜像,并将其推送到镜像仓库。

我们用Idea创建一个名为k8s的springboot项目,对外暴露一个接口,输出:hello-k8s,this is my first k8s pod,如图所示:

使用maven打包k8s项目,如图所示:

创建Dockerfile文件,如图所示:

内容如下:

#基础镜像

FROM java:8

#作者

MAINTAINER dangerzhu

COPY ./target/k8s-0.0.1-SNAPSHOT.jar hello-k8s-pod.jar

EXPOSE 8080

ENTRYPOINT ["java","-jar","hello-k8s-pod.jar"]

使用docker build -t dangerzhu/hello-k8s-pod . 命令构建一个dangerzhu/hello-k8s-pod 镜像,如图所示:

使用dangerzhu账户登录docker,并使用命令docker push dangerzhu/hello-k8s-pod 将dangerzhu/hello-k8s-pod镜像推送到镜像仓库,如图所示:

其次,使用Minikube通过Yaml文件创建Pod

我们先创建hello-k8s-pod.yaml文件,如图所示:

内容如下:

apiVersion: v1

kind: Pod

metadata:

  name: k8s-test-pod

spec:

  containers:

    - image: dangerzhu/hello-k8s-pod

      imagePullPolicy: IfNotPresent

      name: k8s-container

      ports:

        - containerPort: 8080

          protocol: TCP

使用命令 kubectl create -f hello-k8s-pod.yaml 创建Pod,如图所示:

使用命令kubectl get pods 查看k8s-test-pod是否创建成功,以及k8s-container容器是否启动成功,如图所示:

由此可知k8s-test-pod已经创建,根据状态STATUS:ContainerCreating,可以知道容器正在创建,使用命令kubectl describe pod k8s-test-pod查看pod中k8s-container容器创建的具体信息,如图所示:

根据信息可知容器已经启动完成,再次使用命令kubectl get pods 查看结果,如图所示:

使用命令kubectl logs k8s-test-pod -c k8s-container 查看容器运行日志,如图所示:

至此,在K8s上创建一个名为k8s-test-pod的Pod,并在k8s-test-pod中启动k8s-container的容器(dangerzhu/hello-k8s-pod镜像),已结束。


203