Evolution

Образы для ноутбуков


Образы — это предварительно настроенные среды, которые содержат библиотеки, зависимости и настройки для выполнения ноутбука. Вы можете выбрать базовый образ или образ из Artifact Registry.

Для чего нужны образы:

  • Экономия времени — использование образов позволяет сразу приступить к работе, минуя длительный процесс установки и настройки библиотек.

  • Согласованность — в командной работе образы обеспечивают использование одинаковой среды всеми участниками, что исключает проблемы, связанные с различиями в версиях библиотек или настройках.

  • Повторяемость — образы гарантируют, что ноутбук будет работать одинаково на разных машинах или в разных средах, что важно для ML-разработки.

  • Изоляция — каждый проект может работать в отдельной изолированной среде, что предотвращает конфликты между проектами.

  • Автоматизация — образы автоматизируют процесс настройки среды, делая его более удобным и эффективным.

  • Документация — использование образов способствует лучшей документации проекта, позволяя другим пользователям быстро развернуть необходимую среду.

Базовые образы

В Notebooks доступны преднастроенные базовые образы. Каждый образ содержит необходимые инструменты и библиотеки, что позволяет приступить к работе над вашими проектами сразу же. Ниже перечислены доступные образы и их описание.

  • VSCode-Server — образ основан на Visual Studio Code, поддерживает управление пакетами через Anaconda.

  • Cloud.ru Jupyter (Conda) — образ основан на JupyterLab, поддерживает управление пакетами через Anaconda.

  • Cloud.ru Jupyter (Root) — образ основан на JupyterLab, позволяет использовать root-права и управлять настройками системы. В образе отсутствуют предустановленные зависимости. Подходит для сред, в которых требуется индивидуальная настройка окружения с возможностью установки apt-зависимостей.

  • Cloud.ru Jupyter (Root) Prebuilt — образ основан на JupyterLab, позволяет использовать root-права и управлять настройками системы.

  • Cloud.ru Jupyter ComfyUI — образ основан на JupyterLab. Поддерживает управление пакетами через Anaconda и работу с инструментами ComfyUI для создания визуального контента с помощью генеративных сетей.

  • Cloud.ru Jupyter ComfyUI Kandinsky 5 Video Lite — образ основан на JupyterLab. Включает в себя модель Kandinsky 5 Video Lite. Поддерживает управление пакетами через Anaconda и работу с инструментами ComfyUI для создания визуального контента с помощью генеративных сетей.

  • Cloud.ru Jupyter n8n — образ основан на JupyterLab. Cреда для анализа данных и автоматизации рабочих процессов с интеграцией инструмента автоматизации n8n.

Примечание

Для использования некоторых базовых образов требуется включение привилегированного режима. Он будет включен автоматически, при выборе образа.

Проверить библиотеки, установленные в образе для ноутбука

В образах ноутбуков доступны все библиотеки, которые предустановлены в базовых образах соответствующих версий.

Чтобы узнать зависмости и утилиты, которые установлены с помощью Conda:

conda list

Для просмотра библиотек, которые предустановлены для Python:

pip list

Для просмотра библиотек и утилит, которые установлены с использованием средств ОС:

apt list

Требования к Docker-образу

Docker-образ должен соответствовать следующим требованиям:

  • Доступный формат образа — Docker Image Manifest V 2.

  • Docker-образ должен имплементировать любой тип веб-сервера и определять номер порта, на котором контейнер будет принимать запросы.

    Используйте порт 8888 для приема входящих запросов.

  • Docker-образ должен быть собран под плафторму linux/amd64.

    Пока не поддерживается запуск Docker-oбразов, собранных под другие платформы. При использовании Apple Mac с процессором серии М образ по умолчанию собирается под платформу arm64.

    При работе на Mac добавляйте в команду скачивания и сборки образа параметр --platform linux/amd64.

  • При создании контейнера в Dockerfile укажите команду создания пользователя с идентификатором (UID) 1000 и назначьте ему права на пользовательскую директорию.

    Для этого используйте команду ниже, где /mydirectory — название директории в вашем приложении.

    RUN addgroup -g 1000 appuser \
    && adduser -u 1000 -G appuser -s /bin/sh -D appuser
    RUN chown -R 1000 /mydirectory