Kubernetes

создание ConfigMapЗначения остаются строками

Выберите способ чтения и получите ConfigMap, Opaque Secret, ENV или JSON со строковыми значениями.

создание ConfigMap

Ввод

Результат

Обработка только в памяти этой страницы; ввод не отправляется сетевыми запросами или ссылками для общего доступа.

Маска скрывает только результат, исходный ввод виден. Отключите её для копирования или скачивания реальных значений.

Из YAML берутся только значения; метаданные создаются по этим параметрам. Base64 не является шифрованием.

Ввод/данные: по 256 KiB · 1000 ключей · вывод: 1 MiB · только UTF-8

Введите текст

Создание ConfigMap требует сначала определить структуру: отдельные переменные окружения или целый файл конфигурации под одним ключом. Строка PORT=0080 может означать самостоятельную настройку или часть монтируемого файла. Режим определяет число ключей, а цифры остаются текстом.

Для чтения готового манифеста выберите YAML. Декодирование Secret преобразует Base64 в UTF-8; при совпадении ключа stringData имеет приоритет над data. Перед выводом ENV проверяются переносимые имена переменных.

Создание ConfigMap с понятным представлением данных

Одни значения — три формы записи

Создание ConfigMap, кодирование data для Secret и запись stringData используют один набор строк. Сначала все значения результата скрыты. Чтобы скопировать или скачать реальные данные, нужно отключить маску. Исходный текст во входном поле при этом остаётся видимым.

Одинаковые значения представлены обычным data, закодированным data и открытым stringData.

Целый файл не разбивается по знакам равенства

Пустые строки и завершающий перевод строки могут быть важны для приложения. Файловый режим сохраняет весь текст в одном значении. Режим ENV читает присваивания по отдельности; счётчик ключей помогает проверить, какой вариант получился.

Присваивания ENV становятся отдельными ключами, а весь файл хранится в одном значении.

Проверьте режим, имена и актуальность

01

Выберите формат до чтения файла

Локальный файл читается в выбранном режиме, без определения формата по расширению. Для монтируемой конфигурации выберите целый файл. Пример, очистка и чтение файла сначала показывают замену; после применения её можно один раз отменить.

02

Задайте новые метаданные

Имя и namespace берутся из параметров, а не из исходного объекта. Пустой namespace не включается в результат. Ключ application.properties подходит для YAML и JSON, но не соответствует принятому здесь переносимому формату имени ENV.

03

Экспортируйте актуальный результат

При изменении текста или параметров экспорт сразу блокируется. Автоматический режим ждёт 350 мс; после его отключения используйте кнопку или Ctrl/Cmd+Enter. Маска меняет только отображение. Отмена замены восстанавливает и ввод, и прежний результат.

Манифесты и исходные текстовые значения

Три варианта YAML

ConfigMap хранит строки в data. Opaque Secret можно вывести с data в Base64 или с обычным stringData. Все ключи и значения YAML заключаются в кавычки: запись 0080 или false не должна неожиданно стать числом или логическим значением.

Слияние с подсчётом замен

Сначала проверяются значения data, затем stringData заменяет совпадающие ключи. Число замен выводится в строке состояния. Некорректный Base64 остаётся ошибкой, даже если его значение позднее было бы заменено открытой строкой.

Полный текст файла

Файловый режим сохраняет Unicode, CRLF и завершающие переводы строк под выбранным ключом. Строковый JSON также допускает файловые ключи и многострочные значения. Вложенные объекты не разворачиваются, а массивы не превращаются в текст автоматически.

Ошибки запрещают частичный экспорт

Повторяющиеся ключи, неверные имена, нестроковые значения и синтаксические ошибки YAML останавливают преобразование. Если позиция известна, показываются строка и столбец с подсветкой ввода. Экспортируется только полный актуальный результат.

Поддерживаемые данные и границы преобразования

Один текстовый объект
YAML принимает один ConfigMap v1 или Opaque Secret. binaryData, специальные типы Secret, несколько документов, псевдонимы, ключи слияния и пользовательские теги отклоняются. Используется консервативное чтение YAML 1.1; возможные даты, числа и логические значения нужно заключать в кавычки.
ENV читается как dotenv
Поддерживаемые кавычки и комментарии интерпретируются, но переменные и команды не раскрываются. Это отличается от kubectl --from-env-file, сохраняющего кавычки. Комментарии, исходные отступы и оформление строк в новом представлении не сохраняются.
Только строки без повторов
JSON должен быть плоским объектом строк; значения данных YAML тоже должны быть строками. Числа, null, списки и вложенные объекты не приводятся к тексту. Повторяющиеся ключи считаются ошибкой; исключение составляет заданный приоритет stringData над data.
Имена не исправляются автоматически
Ключи данных допускают до 253 букв ASCII, цифр, точек, дефисов и подчёркиваний. Одиночная точка и начало с двух точек запрещены. ENV использует более узкий формат идентификатора и отклоняет __proto__. Несовместимый файловый ключ блокирует весь экспорт ENV.
Ограниченный объём обработки
Ввод и декодированные ключи со значениями ограничены 256 KiB каждый, число записей — 1000, результат — 1 MiB. Это пределы инструмента, а не полная проверка размера объекта Kubernetes. Файлы не в UTF-8, символы NUL и превышение лимита отклоняются.
Новый результат без редактирования ресурса
Из YAML извлекаются только значения. labels, annotations, immutable и другие метаданные не переносятся; имя и namespace задаются параметрами. Инструмент не вычисляет Helm, не обращается к кластеру, не создаёт ссылки Pod и не проверяет права на развёртывание.

Создание ConfigMap: частые вопросы

Как получить ConfigMap из файла .env?

Выберите ENV на входе и ConfigMap на выходе, затем задайте имя объекта. Поддерживаемые кавычки dotenv снимаются, но значения остаются строками. Проверьте data перед использованием: само преобразование не создаёт ресурс в кластере.

Чем отличаются поля data и stringData у Secret?

data содержит значения в Base64. stringData принимает обычные строки и имеет приоритет, когда ключ присутствует в обоих полях. Инструмент читает и создаёт обе формы. stringData упрощает запись, но не добавляет шифрование.

Защищает ли Base64 пароли в Secret?

Нет. Base64 — обратимое кодирование. Маска результата также не шифрует исходный текст или скачанный файл. Защита Secret зависит от контроля доступа и конфигурации кластера. Экспортированный файл тоже требует подходящего хранения.

Почему числовые значения заключаются в кавычки?

Без кавычек YAML может прочитать 012 как число, а false как логическое значение. Поэтому в результате все ключи и значения заключены в кавычки. Входные данные другого типа отклоняются: инструмент не угадывает исходную строковую запись.

Чем загрузка целого файла отличается от чтения переменных из env-файла?

ENV создаёт ключ для каждого присваивания. Файловый режим создаёт один ключ со всем исходным текстом. Он подходит для application.properties и других монтируемых документов; знаки равенства внутри файла не создают дополнительные переменные.

Что происходит с комментариями, кавычками и повторяющимися ключами?

При повторе ключа преобразование останавливается, а не выбирает последнее значение. Кавычки dotenv определяют содержимое строки, комментарии удаляются. Комментарии и оформление YAML также не сохраняются. Если они нужны как содержимое файла, используйте файловый режим.

Не хватает нужного сценария?

Проверьте структуру перед экспортом

Создание ConfigMap можно проверить на примере: сравните число ключей и поле вывода. Выберите представление, ожидаемое приложением, затем откройте значения для проверки и экспорта актуального результата.