Стандартные помощники Fullname и Labels
Изучите стандартные помощники, поставляемые helm create
«Стандартные помощники Fullname и Labels» — бесплатный урок Helm Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Helm Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Helm Academy содержит 4 уроков всего.
Готовые помощники
Каждая диаграмма, созданная с помощью helm create, поставляется с файлом _helpers.tpl, заполненным готовыми частичными шаблонами. Знание этих шаблонов избавляет от необходимости заново придумывать имена и метки.
Помощник chart.name
Частичный шаблон chart.name возвращает базовое имя диаграммы, позволяя переопределить его через значения. Это строительный блок для остальных шаблонов.
{{- define "mychart.name" -}}
{{- default .Chart.Name .Values.nameOverride -}}
{{- end -}}Помощник chart.fullname
Частичный шаблон chart.fullname создаёт уникальное имя ресурса — обычно имя выпуска, объединённое с именем диаграммы, — чтобы разные установки никогда не конфликтовали.
name: {{ include "mychart.fullname" . }}Почему fullname обрезается
Имена Kubernetes могут содержать не более 63 символов. Помощник fullname передаёт результат через trunc и trimSuffix, чтобы уложиться в этот предел.
{{ ... | trunc 63 | trimSuffix "-" }}Помощник метки chart.chart
Частичный шаблон chart.chart возвращает имя и строку версии для метки helm.sh/chart. Так фиксируется версия диаграммы, создавшая ресурс.
helm.sh/chart: {{ include "mychart.chart" . }}Общие метки
Частичный шаблон chart.labels выводит полный рекомендуемый набор меток: managed-by, метку диаграммы, версию и объединённые метки селектора.
metadata:
labels:
{{- include "mychart.labels" . | nindent 4 }}Метки селектора хранятся отдельно
Частичный шаблон chart.selectorLabels содержит только неизменяемую пару, используемую для сопоставления с модулями. Она остаётся стабильной, поэтому селектор Deployment никогда не ломается.
app.kubernetes.io/name: {{ include "mychart.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}Зачем нужны два помощника для меток
Полные метки включают версию, которая меняется при обновлении. Метки селектора никогда не должны меняться, поэтому Helm хранит их в отдельном, более компактном частичном шаблоне.
Помощник chart.serviceAccountName
Созданная диаграмма также определяет chart.serviceAccountName, который выбирает правильное имя учётной записи в зависимости от того, создаётся ли она.
serviceAccountName: {{ include "mychart.serviceAccountName" . }}Используйте повторно, не переписывайте
Создавая манифесты, вызывайте эти стандартные помощники вместо того, чтобы вручную записывать имена и метки. Так Вы автоматически применяете лучшие практики Kubernetes.
Изучите свой _helpers.tpl
Откройте файл, созданный командой helm create, и прочитайте каждое определение define. Понимание этих нескольких частичных шаблонов поможет Вам разобраться почти в любой диаграмме.
Быстрая проверка
На какой помощник следует сослаться в selector.matchLabels объекта Deployment?
Итоги: стандартные помощники
Вы познакомились с помощниками fullname, labels и selectorLabels из helm create. Вызывайте их в манифестах, чтобы получать согласованный и общепринятый результат. 🏷️
Часто задаваемые вопросы
Урок «Стандартные помощники Fullname и Labels» бесплатный?
Да — полный текст урока «Стандартные помощники Fullname и Labels» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Helm Academy, подпишись на CoddyKit PRO. Курс Helm Academy содержит 4 уроков всего.
Чему я научусь в уроке «Стандартные помощники Fullname и Labels»?
Изучите стандартные помощники, поставляемые helm create Ты практикуешь Helm Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Helm Academy?
Предыдущий опыт не требуется. Helm Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Стандартные помощники Fullname и Labels»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Helm Academy?
Да. Каждый урок Helm Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Определение частичного шаблона с define
- Вставка частичных шаблонов с template и include
- Стандартные помощники Fullname и Labels
- Передача области видимости в именованный шаблон