Helm Set Docker Изображение тега динамически - PullRequest
0 голосов
/ 14 января 2020

Я загружаю Docker изображений в наш личный реестр через Jenkins с помощью следующей команды:

def dockerImage = docker.build("repo/myapp:${env.BUILD_NUMBER}")

(BUILD_NUMBER увеличивается после каждой сборки.)

Поскольку я новичок чтобы использовать Helm, я не мог решить, как мне дать тег для изображений в values.yaml.

Я хотел бы развернуть свое приложение в нескольких средах, таких как:

  • dev
  • test
  • prod

Допустим, я смог развернуть свое приложение через Helm на dev и последний BUILD_NUMBER это:

  • 100 для dev
  • 101 для test
  • 102 для prod

Что следует быть значением тега, тогда?

 image:
  repository: registryt/myrepo/image
  tag: 

1 Ответ

2 голосов
/ 14 января 2020

Вы должны поместить тег "some" в ваш values.yaml, который будет действовать по умолчанию tag. У каждой карты шлема есть ее, вы можете проверить официальные карты шлема здесь .

Теперь у вас есть два варианта действий в различных средах.

Вариант 1 : Параметры командной строки

При установке таблицы рулевого управления вы можете динамически указывать имя тега с помощью --set. Например:

$ helm install --set image.tag=12345 <your-chart-name>

Вариант 2: Отдельные файлы values.yaml

Вы можете хранить отдельные values.yaml в своем хранилище, например:

values.dev.yaml
values.prod.yaml

Затем, обновите правильные значения в вашем конвейере Jenkins.

...