Собрать кастомный образ на основе базового для деплоя
Docker registry используется для хранения кастомных Docker-образов. Кастомный образ собирается на основе любого базового образа с использованием необходимых пользователю зависимостей.
Для создания кастомного образа:
Подготовьте Dockerfile на локальной машине (подробнее см. Подготовка Dockerfile).
Подготовьте репозиторий для размещения образа (подробнее см. Подготовка репозитория).
Соберите образ и загрузите его в Docker registry (подробнее см. Сборка кастомного образа и загрузка в Docker registry).
Подготовка Dockerfile
Dockerfile — текстовый документ, который содержит все необходимые команды для сборки образа.
Для отправки запроса в инференс, развернутый с использованием кастомного образа, вместо метода predict
должен быть реализован метод, обрабатывающий запросы.
В общем случае этот документ выглядит так:
FROM {PROD_REGISTRY}/aicloud-base-images/horovod-cuda11.0-tf2.4.0-pt1.7.1:latest # the base image from which the custom image will be built
apt-get install mypackage # packages required for installation
Список базовых образов, доступных в рамках модуля, представлен в разделе Библиотеки в образах.
Рассмотрим пример, как создать Dockerfile с использованием базового образа.
FROM cr.msk.sbercloud.ru/aicloud-base-images/horovod-cuda11.0-tf2.4.0-pt1.7.1
USER root
apt-get install mypackage
USER user
Подготовка репозитория
Кастомные образы для использования в модуле Deployments необходимо размещать в репозиториях, в наименовании которых есть префикс «deploy-».
Сборка кастомного образа и загрузка в Docker registry
Выполните сборку кастомного образа (docker build), пометьте образ тегом (docker tag) и загрузите образ в реестр (docker push). См. Управление образами.
Примечание
При работе на MacOS с M1 необходимо к команде docker build
добавить флаг --platform linux/amd64
.