Быстрый старт
Этот документ поможет вам быстро понять, как создать коннектор Harbor для подключения к реестру Harbor и безопасного выполнения операций с образами контейнеров без прямой работы с учетными данными.
Мы создадим коннектор Harbor и используем его для выполнения операций с образами контейнеров без прямой работы с учетными данными на стороне клиента.
Содержание
Оценочное время чтенияТребованияОбзор процессаШаги для выполненияШаг 1: Создать NamespaceШаг 2: Создать учетные данные реестра Harbor и коннекторШаг 3: Создать Job для выполнения операций с контейнерамиШаг 4: Проверить выполнение операцииКак это работаетОценочное время чтения
15 минут
Требования
- Kubernetes кластер с установленной системой Connectors (компоненты Operator, ConnectorsCore и ConnectorsHarbor). Подробнее об установке этих компонентов смотрите в Installation Guide.
- Адрес реестра Harbor и учетные данные
- Базовые знания Kubernetes и реестров контейнеров
- Реестр Harbor должен быть доступен и поддерживать стандартные API реестров контейнеров
Обзор процесса
Шаги для выполнения
Шаг 1: Создать Namespace
Создайте выделенное пространство имен для этой демонстрации:
Шаг 2: Создать учетные данные реестра Harbor и коннектор
Создайте Secret с учетными данными реестра Harbor и ресурс коннектора Harbor.
Более подробную информацию о создании и настройке коннекторов смотрите в Connectors Quick Start Guide.
Проверьте, что коннектор готов:
Шаг 3: Создать Job для выполнения операций с контейнерами
Создайте ConfigMap с примером Containerfile:
Создайте Job, который использует коннектор для сборки и отправки образа контейнера:
Проверьте, что Job запущен:
Ключевые параметры в определении тома:
connector.name: Имя вашего OCI коннектораconfiguration.names: Указывает, какую конфигурацию генерировать из OCI ConnectorClass:"registry-config": Генерирует конфигурацию аутентификации (config.json), необходимую для любых операций с реестром"buildkitd": Генерирует конфигурацию демона BuildKit для доступа к небезопасному реестру- если не указано, будет смонтирована конфигурация по умолчанию
mountPath: Указывает, куда в контейнере должна быть смонтирована конфигурация:- "/root/.docker" для конфигурации аутентификации buildkit
Шаг 4: Проверить выполнение операции
Проверьте логи Job, чтобы убедиться, что образ был успешно собран и отправлен:
Вы должны увидеть процесс сборки и отправки образа в реестр.
Как это работает
Коннектор Harbor работает следующим образом:
- Создает прокси-сервис, который обрабатывает аутентификацию с реестром Harbor
- Монтирует конфигурацию прокси в Pod через CSI драйвер
- Использует конфигурацию прокси через переменные окружения во время операций с образами контейнеров
- Прокси-сервис проверяет конфигурацию прокси и внедряет учетные данные аутентификации реестра Harbor
Это позволяет рабочим нагрузкам обращаться к реестру Harbor без прямой работы с учетными данными.