Kubernetes - Изображения

Образы Kubernetes (Docker) являются ключевыми строительными блоками контейнерной инфраструктуры. На данный момент мы поддерживаем Kubernetes только для поддержки образов Docker. У каждого контейнера в модуле есть свой образ Docker, работающий внутри него.

Когда мы настраиваем модуль, свойство изображения в файле конфигурации имеет тот же синтаксис, что и команда 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

Вышеупомянутая команда выдаст результат успеха, или мы получим результат как сбой.

Note - Рекомендуется попробовать все команды самостоятельно.