Kubernetes - 图像


Kubernetes (Docker) 镜像是容器化基础设施的关键构建块。截至目前,我们仅支持 Kubernetes 来支持 Docker 镜像。Pod 中的每个容器都在其中运行其 Docker 映像。

当我们配置 Pod 时,配置文件中的 image 属性与 Docker 命令的语法相同。配置文件有一个字段来定义图像名称,我们计划从注册表中提取该名称。

以下是常见的配置结构,它将从 Docker 注册表中提取映像并将其部署到 Kubernetes 容器中。

apiVersion: v1
kind: pod
metadata:
   name: Tesing_for_Image_pull -----------> 1
   spec:
      containers:
         - name: neo4j-server ------------------------> 2
         image: <Name of the Docker image>----------> 3
         imagePullPolicy: Always ------------->4
         command: ["echo", "SUCCESS"] ------------------->

在上面的代码中,我们定义了 -

  • name: Tesing_for_Image_pull - 指定此名称是为了识别和检查从 Docker 注册表拉取映像后将创建的容器的名称。

  • name: neo4j-server - 这是我们尝试创建的容器的名称。就像我们提供的 neo4j-server 一样。

  • image: <Name of the Docker image> - 这是我们尝试从 Docker 或内部镜像注册表中提取的镜像的名称。我们需要定义一个完整的注册表路径以及我们尝试提取的图像名称。

  • imagePullPolicy - 始终 - 此图像拉取策略定义每当我们运行此文件来创建容器时,它将再次拉取相同的名称。

  • command: [“echo”, “SUCCESS”] - 这样,当我们创建容器时,如果一切顺利,当我们访问容器时,它将显示一条消息。

为了拉取映像并创建容器,我们将运行以下命令。

$ kubectl create –f Tesing_for_Image_pull

一旦我们获取日志,我们将得到成功的输出。

$ kubectl log Tesing_for_Image_pull

上面的命令将产生成功的输出,否则我们将得到失败的输出。

注意- 建议您亲自尝试所有命令。