Создание Workbench
Содержание
Предварительные требованияСоздание Workbench через веб-консольПорядок действийПодключение к WorkbenchЗагрузка файлов в JupyterLabУстановка файла Python Wheel в автономном режимеДоступные образы WorkbenchВстроенные образыМногоархитектурные образы (x86_64 и arm64)Дополнительные образыОбразы x86_64Образы arm64Руководство по скрипту синхронизации образов Docker HubПредварительные требования к скриптуНастройка переменных окруженияОбязательные параметры (настройка целевого частного реестра)Необязательные параметры (настройка исходного DockerHub)Пример 1: Базовое использование (наиболее распространенный сценарий)Пример 2: Выполнение одной командой (подходит для CI-сред)Пример 3: Полный запуск с аутентификацией DockerHub (предотвращение Rate Limit)Устранение неполадок и примечанияПредварительные требования
- Убедитесь, что
kubectlнастроен и подключен к вашему кластеру. - Убедитесь, что вы создали
PVC.
- Войдите в систему и перейдите на страницу Alauda Container Platform.
- Нажмите Storage > PersistentVolumeClaims, чтобы открыть страницу списка PVC.
- Найдите кнопку Create PVC, нажмите Create и введите информацию.
Создание Workbench через веб-консоль
Порядок действий
Войдите в систему и перейдите на страницу Alauda AI.
Нажмите Workbench, чтобы открыть страницу списка Workbench.
Найдите кнопку Create, нажмите Create — откроется форма создания, и после заполнения информации вы сможете создать workbench.
Подключение к Workbench
После создания экземпляра workbench нажмите Workbench в левой панели навигации; ваш экземпляр workbench должен отображаться в списке. Когда статус станет Running, нажмите кнопку Connect, чтобы войти в workbench.
Загрузка файлов в JupyterLab
Если вы используете workbench на базе JupyterLab, вы можете загрузить файлы с локального компьютера с помощью кнопки Upload Files в браузере файлов. Это полезно, когда ваш workbench не может получить доступ к общедоступному интернету или зеркалу PyPI, и вам нужно установить Python-пакеты из локальных файлов wheel.
Установка файла Python Wheel в автономном режиме
-
Подключитесь к workbench и откройте JupyterLab.
-
В левом браузере файлов нажмите кнопку Upload Files и выберите один или несколько файлов
.whlна локальном компьютере. -
Откройте терминал в JupyterLab и перейдите в каталог, содержащий загруженные файлы.
-
Установите пакет:
Если пакет зависит от других файлов wheel, загрузите все необходимые файлы .whl в тот же каталог и установите их без обращения к внешнему индексу пакетов:
Пакеты, установленные напрямую в контейнер, подходят для временного или личного использования. Если вы пересоздадите workbench, пакеты, установленные только внутри контейнера, могут быть потеряны. Для воспроизводимых сред лучше использовать собственный образ workbench или виртуальную среду, размещенную на постоянном хранилище.
Доступные образы Workbench
Платформа предоставляет набор готовых к использованию образов WorkspaceKind, которые отображаются непосредственно в форме создания workbench. Дополнительные образы также публикуются в Docker Hub, но по умолчанию не синхронизируются в платформу.
Следующие таблицы используют тот же общий стиль, что и документация Red Hat OpenShift AI: каждый образ описывается с точки зрения его назначения, а ключевые предустановленные пакеты приводятся для быстрого ознакомления. Списки пакетов являются репрезентативными, а не исчерпывающими. Версии взяты из соответствующих каталогов образов в репозитории сборки и их lock-файлов.
Встроенные образы
Следующие образы доступны из коробки:
Многоархитектурные образы (x86_64 и arm64)
Дополнительные образы
Следующие образы доступны в Docker Hub, но по умолчанию не встроены в платформу:
Образы x86_64
Эти образы предназначены для узлов x86_64 с поддержкой NVIDIA GPU.
Образы arm64
Эти образы предназначены для узлов arm64 с поддержкой Ascend NPU.
Чтобы использовать дополнительный образ, сначала синхронизируйте его в свой реестр образов. Это можно сделать с помощью такого инструмента, как skopeo, или с помощью скрипта, описанного в следующем разделе.
Руководство по скрипту синхронизации образов Docker Hub
sync-from-dockerhub.sh — это автоматизированный инструмент для синхронизации выбранных образов Docker Hub, особенно очень больших образов, в частный реестр образов, например Harbor. При прямой передаче больших образов из-за сетевых колебаний чаще возникают сбои Out-Of-Memory (OOM) или таймауты. Для повышения надежности скрипт использует промежуточный рабочий процесс: сначала выполняет pull локально → затем экспортирует в tar-архив → затем отправляет tar-архив в целевой реестр. Он также автоматически очищает временные файлы по завершении задачи или при неожиданном выходе.
Предварительные требования к скрипту
Перед запуском этого скрипта убедитесь, что на машине, где он будет выполняться, установлены и доступны следующие инструменты:
bash(среда выполнения)nerdctl(для загрузки образов и экспорта слоев в tar-архивы)skopeo(для отправки tar-архивов образов в целевой частный реестр)
Настройка переменных окружения
Скрипт выполняет синхронизацию, считывая переменные окружения, что обеспечивает гибкость использования без необходимости изменять код.
Обязательные параметры (настройка целевого частного реестра)
Необязательные параметры (настройка исходного DockerHub)
Чтобы не сработал Rate Limit DockerHub при загрузке большого количества образов, вы можете указать свои учетные данные DockerHub для входа перед выполнением загрузки. Если это не требуется, оставьте эти поля пустыми.
Пример 1: Базовое использование (наиболее распространенный сценарий)
Если вам нужно только синхронизировать образы, определенные в скрипте, в ваш частный Harbor:
Пример 2: Выполнение одной командой (подходит для CI-сред)
Вы можете объявить переменные окружения и запустить скрипт в той же строке. Такой подход позволяет не засорять текущие переменные окружения Shell:
Пример 3: Полный запуск с аутентификацией DockerHub (предотвращение Rate Limit)
При частом извлечении образов с одной и той же машины DockerHub может отклонять ваши запросы. В этом случае укажите свои учетные данные DockerHub:
Устранение неполадок и примечания
- Место на диске: поскольку скрипту требуется временно хранить очень большие образы (например, 13GB) в виде
tar-архивов, убедитесь, что в каталоге/tmpвашей системы (или в его базовом корневом разделе) достаточно свободного места (рекомендуется не менее 30GB). Каталог промежуточного хранения по умолчанию для скрипта —/tmp/workbench-images-export-from-hub. - Таймауты передачи: текущий скрипт задает таймаут 120 минут (
SKOPEO_TIMEOUT="120m") для отправки больших файлов. Если процесс завершается сбоем из-за очень низкой скорости сети, вы можете изменить значение этого параметра в начале скрипта с помощью любого текстового редактора. - Изменение списка образов: если есть образы, которые вы больше не хотите синхронизировать, просто откройте
sync-from-dockerhub.shи закомментируйте#нужные строки в массивеWORKBENCH_IMAGES(аналогично тому, как минимальные образы были отфильтрованы вsync.sh).
После того как образ станет доступен в вашем реестре, вам также нужно добавить соответствующую конфигурацию в поле imageConfig ресурса WorkspaceKind, который вы планируете использовать. Ниже приведен пример patch YAML, который добавляет новую конфигурацию образа в существующий WorkspaceKind:
Вы можете применить этот patch к используемому WorkspaceKind с помощью команды, подобной следующей:
Эта команда применяет JSON patch-файл к указанному WorkspaceKind и обновляет его imageConfig, чтобы новый образ workbench стал доступен в пользовательском интерфейсе создания workbench.
На практике вы можете адаптировать поля name, image и description в соответствии с образом, который вы синхронизировали, и соглашениями об именовании, используемыми в вашем кластере.
Мы также встроили некоторые опции ресурсов, которые можно увидеть в выпадающем меню.