Тег изображения в файле контроллера репликации - PullRequest
0 голосов
/ 01 июля 2018

У меня есть изображение, отправленное в Реестр контейнеров Google с именем gcr.io/$(PROJECT_ID)/img-name:46d49ab.

В моем контроллере репликации у меня есть:

apiVersion: v1
kind: ReplicationController
metadata:
  name: go-server-rc
spec:
  replicas: 3
  selector:
    name: go-server
    version: v8
  template:
    metadata:
      labels:
        name: go-server
        version: v8
    spec:
      containers:
      - name: go-server
        image: gcr.io/$(PROJECT_ID)/img-name:46d49ab
        ports:
        - containerPort: 5000

Это работает, но не при удалении хеш-тега коммита 46d49ab. Я не хочу менять тег каждый раз, когда я фиксирую.

Я также установил триггер в Google Container Builder, чтобы после каждой фиксации получать ветку master моего репозитория и создавать изображение gcr.io/$(PROJECT_ID)/img-name:$(COMMIT_HASH).

Как я могу отредактировать файл моего контроллера репликации, чтобы получить самую последнюю версию? Какие рабочие процессы используют люди?

1 Ответ

0 голосов
/ 01 июля 2018

Возможно использовать тег latest, чтобы Kubernetes извлекал изображение при каждом запуске. Каждый раз, когда вы создаете новое изображение, пометьте его latest и поместите в реестр контейнера. Тем не менее, я бы не рекомендовал это.

Вы не будете знать, какие модули работают с какой версией вашего кода. Я делаю именно так, как вы упоминаете в своем вопросе. Я считаю, что лучше обновлять объект развертывания при каждом обновлении образа. Это обеспечит ожидаемое развертывание, а устранение неполадок станет яснее при просмотре изображений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...